KR20220155897A - M2m 시스템에서 데이터 라이선스를 관리하기 위한 방법 및 장치 - Google Patents

M2m 시스템에서 데이터 라이선스를 관리하기 위한 방법 및 장치 Download PDF

Info

Publication number
KR20220155897A
KR20220155897A KR1020220029053A KR20220029053A KR20220155897A KR 20220155897 A KR20220155897 A KR 20220155897A KR 1020220029053 A KR1020220029053 A KR 1020220029053A KR 20220029053 A KR20220029053 A KR 20220029053A KR 20220155897 A KR20220155897 A KR 20220155897A
Authority
KR
South Korea
Prior art keywords
resource
license
information
data
cse
Prior art date
Application number
KR1020220029053A
Other languages
English (en)
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 KR20220155897A publication Critical patent/KR20220155897A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/106Enforcing content protection by specific content processing
    • G06F21/1064Restricting content processing at operating system level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/107License processing; Key processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/70Services for machine-to-machine communication [M2M] or machine type communication [MTC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/103Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying security measure for protecting copy right

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Technology Law (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Storage Device Security (AREA)

Abstract

본 개시는 M2M(Machine-to-Machine) 시스템에서 데이터 라이선스(license)를 관리하기 위한 것으로, 제1 장치의 동작 방법은, 데이터를 포함하는 제1 자원 및 상기 데이터의 라이선스를 관리하기 위한 정보를 포함하는 제2 자원을 생성하는 단계, 상기 데이터에 대한 동작(operation)을 요청하는 메시지를 제2 장치로부터 수신하는 단계, 상기 제2 자원에 포함된 정보에 기반하여 상기 동작이 허용되는지 여부를 판단하는 단계, 및 상기 동작을 수행하기 위한 제2 메시지를 상기 제2 장치 또는 제3 장치에게 송신하는 단계를 포함할 수 있다.

Description

M2M 시스템에서 데이터 라이선스를 관리하기 위한 방법 및 장치{METHOD AND APPARATUS FOR MANAGING DATA LICENSE IN MACHINE TO MACHINE SYSTEM}
본 개시는 M2M(Machine-to-Machine) 시스템에 관한 것으로, 보다 구체적으로, M2M 시스템에서 데이터 라이선스(license)를 관리하기 위한 방법 및 장치에 대한 것이다.
최근 M2M(Machine-to-Machine) 시스템에 대한 도입이 활발해지고 있다. M2M 통신은 사람의 개입 없이 기계(machine)와 기계 사이에 수행되는 통신을 의미할 수 있다. M2M은 MTC(Machine Type Communication), IoT(Internet of Things) 또는 D2D(Device-to-Device)를 지칭할 수 있다. 다만, 하기에서는 설명의 편의를 위해 M2M로 통일하게 지칭하지만, 이에 한정되지 않는다. M2M 통신에 사용되는 단말은 M2M 단말(M2M device)일 수 있다. M2M 단말은 일반적으로 적은 데이터를 전송하면서 낮은 이동성을 갖는 디바이스일 수 있다. 이때, M2M 단말은 기계 간 통신 정보를 중앙에서 저장하고 관리하는 M2M 서버와 연결되어 사용될 수 있다. 또한, M2M 단말은 사물 추적, 자동차 연동, 전력 계량 등과 같이 다양한 시스템에서 적용될 수 있다.
한편, M2M 단말과 관련하여, oneM2M 표준화 기구는 M2M 통신, 사물통신, IoT 기술을 위한 요구사항, 아키텍처, API(Application Program Interface) 사양, 보안 솔루션, 상호 운용성에 대한 기술을 제공하고 있다. oneM2M 표준화 기구의 사양은 스마트 시티, 스마트 그리드, 커넥티드 카, 홈 오토메이션, 치안, 건강과 같은 다양한 어플리케이션과 서비스를 지원하는 프레임워크를 제공하고 있다.
본 개시는 M2M(Machine-to-Machine) 시스템에서 데이터에 대한 라이선스(license)를 효과적으로 관리하기 위한 방법 및 장치를 제공하는데 목적이 있다.
본 개시는 M2M 시스템에서 데이터에 대한 라이선스의 올바른 사용을 검사하기 위한 방법 및 장치를 제공하는데 목적이 있다.
본 개시는 M2M 시스템에서 데이터에 대한 적격한(eligible) 동작을 검사하기 위한 방법 및 장치를 제공하는데 목적이 있다.
본 개시는 M2M 시스템에서 라이선스에 기반하여 플랫폼들 간 데이터를 복제하기 위한 방법 및 장치를 제공하는데 목적이 있다.
본 개시의 일 실시 예에 따르면, M2M(Machine-to-Machine) 시스템에서 제1 장치의 동작 방법은, 데이터를 포함하는 제1 자원 및 상기 데이터의 라이선스를 관리하기 위한 정보를 포함하는 제2 자원을 생성하는 단계, 상기 데이터에 대한 동작(operation)을 요청하는 메시지를 제2 장치로부터 수신하는 단계, 상기 제2 자원에 포함된 정보에 기반하여 상기 동작이 허용되는지 여부를 판단하는 단계, 및 상기 동작을 수행하기 위한 제2 메시지를 상기 제2 장치 또는 제3 장치에게 송신하는 단계를 포함할 수 있다.
본 개시의 일 실시 예에 따르면, M2M(Machine-to-Machine) 시스템에서 제3 장치의 동작 방법은, 제1 장치 또는 제2 장치로부터 라이선스를 가지는 데이터를 위한 제1 자원의 생성을 요청하는 제1 메시지를 수신하는 단계, 상기 데이터를 포함하는 제1 자원 및 상기 라이선스를 관리하기 위한 정보를 포함하는 제2 자원을 생성하는 단계, 및 상기 제1 자원 및 상기 제2 자원의 생성을 통지하는 제2 메시지를 상기 제1 장치 또는 상기 제2 장치에게 송신하는 단계를 포함할 수 있다.
본 개시의 일 실시 예에 따르면, M2M(Machine-to-Machine) 시스템에서 제1 장치는, 송수신기, 및 상기 송수신기와 연결된 프로세서를 포함하며, 상기 프로세서는, 데이터를 포함하는 제1 자원 및 상기 데이터의 라이선스를 관리하기 위한 정보를 포함하는 제2 자원을 생성하고, 상기 데이터에 대한 동작(operation)을 요청하는 메시지를 제2 장치로부터 수신하고, 상기 제2 자원에 포함된 정보에 기반하여 상기 동작이 허용되는지 여부를 판단하고, 상기 동작을 수행하기 위한 제2 메시지를 상기 제2 장치 또는 제3 장치에게 송신하도록 제어할 수 있다.
본 개시의 일 실시 예에 따르면, M2M(Machine-to-Machine) 시스템에서 제3 장치는, 송수신기, 및 상기 송수신기와 연결된 프로세서를 포함하며, 상기 프로세서는, 제1 장치 또는 제2 장치로부터 라이선스를 가지는 데이터를 위한 제1 자원의 생성을 요청하는 제1 메시지를 수신하고, 상기 데이터를 포함하는 제1 자원 및 상기 라이선스를 관리하기 위한 정보를 포함하는 제2 자원을 생성하고, 상기 제1 자원 및 상기 제2 자원의 생성을 통지하는 제2 메시지를 상기 제1 장치 또는 상기 제2 장치에게 송신하도록 제어할 수 있다.
본 개시에 따르면, M2M(Machine-to-Machine) 시스템에서 데이터에 대한 라이선스(license)가 효과적으로 관리될 수 있다.
본 개시에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 개시에 따른 M2M(Machine-to-Machine) 시스템의 계층 구조를 도시한다.
도 2는 본 개시에 따른 M2M 시스템에서 기준점(reference point)을 도시한다.
도 3은 본 개시에 따른 M2M 시스템에서 각각의 노드를 도시한다.
도 4는 본 개시에 따른 M2M 시스템에서 공통 서비스 펑션을 도시한다.
도 5는 본 개시에 따른 M2M 시스템에서 송신자 및 수신자가 메시지를 교환하는 방법을 도시한다.
도 6은 본 개시에 따른 M2M 시스템에서 데이터에 대한 라이선스(license)를 관리하기 위한 자원의 예를 도시한다.
도 7은 본 개시에 따른 M2M 시스템에서 라이선스 및 자원 간 연결 관계의 예를 도시한다.
도 8은 본 개시에 따른 M2M 시스템에서 라이선스 관련 자원에 기반하여 데이터를 처리하는 절차의 예를 도시한다.
도 9는 본 개시에 따른 M2M 시스템에서 라이선스 관련 자원에 기반하여 자원을 발견(discovery)하는 절차의 예를 도시한다.
도 10은 본 개시에 따른 M2M 시스템에서 라이선스 관련 자원에 기반하여 자원을 검색하는 절차의 예를 도시한다.
도 11은 본 개시에 따른 M2M 시스템에서 라이선스 관련 자원에 기반하여 자원을 전달(transfer)하는 절차의 예를 도시한다.
도 12는 본 개시에 따른 M2M 시스템에서 M2M 장치의 구성을 도시한다.
이하에서는 첨부한 도면을 참고로 하여 본 개시의 실시 예에 대하여 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나, 본 개시는 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시 예에 한정되지 않는다.
본 개시에 있어서, 제1, 제2 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용되며, 특별히 언급되지 않는 한 구성요소들간의 순서 또는 중요도 등을 한정하지 않는다. 따라서, 본 개시의 범위 내에서 일 실시 예에서의 제1 구성요소는 다른 실시 예에서 제2 구성요소라고 칭할 수도 있고, 마찬가지로 일 실시 예에서의 제2 구성요소를 다른 실시 예에서 제1 구성요소라고 칭할 수도 있다.
본 개시에 있어서, 어떤 구성요소가 다른 구성요소와 "연결", "결합" 또는 "접속"되어 있다고 할 때, 이는 직접적인 연결관계뿐만 아니라, 그 중간에 또 다른 구성요소가 존재하는 간접적인 연결관계도 포함할 수 있다. 또한 어떤 구성요소가 다른 구성요소를 "포함한다" 또는 "가진다"고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 배제하는 것이 아니라 또 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
본 개시에 있어서, 서로 구별되는 구성요소들은 각각의 특징을 명확하게 설명하기 위함이며, 구성요소들이 반드시 분리되는 것을 의미하지는 않는다. 즉, 복수의 구성요소가 통합되어 하나의 하드웨어 또는 소프트웨어 단위로 이루어질 수도 있고, 하나의 구성요소가 분산되어 복수의 하드웨어 또는 소프트웨어 단위로 이루어질 수도 있다. 따라서, 별도로 언급하지 않더라도 이와 같이 통합된 또는 분산된 실시 예도 본 개시의 범위에 포함된다.
본 개시에 있어서, 다양한 실시 예에서 설명하는 구성요소들이 반드시 필수적인 구성요소들은 의미하는 것은 아니며, 일부는 선택적인 구성요소일 수 있다. 따라서, 일 실시 예에서 설명하는 구성요소들의 부분집합으로 구성되는 실시 예도 본 개시의 범위에 포함된다. 또한, 다양한 실시 예에서 설명하는 구성요소들에 추가적으로 다른 구성요소를 포함하는 실시 예도 본 개시의 범위에 포함된다.
본 개시의 실시 예를 설명함에 있어서 공지 구성 또는 기능에 대한 구체적인 설명이 본 개시의 요지를 흐릴 수 있다고 판단되는 경우에는 그에 대한 상세한 설명은 생략한다. 그리고, 도면에서 본 개시에 대한 설명과 관계없는 부분은 생략하였으며, 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
또한 본 명세서는 M2M(Machine-to-Machine) 통신에 기초한 네트워크에 대해 설명하며, M2M 통신 네트워크에서 이루어지는 작업은 해당 통신 네트워크를 관할하는 시스템에서 네트워크를 제어하고 데이터를 송신하는 과정에서 이루어질 수 있다.
또한, 본 명세서에서 M2M 단말은 M2M 통신을 수행하는 단말일 수 있으나, 호환성(Backward Compatibility)을 고려하여 무선 통신 시스템에서 동작하는 단말일 수 있다. 즉, M2M 단말은 M2M 통신 네트워크에 기초하여 동작될 수 있는 단말을 의미할 수 있으나, M2M 통신 네트워크로 한정되는 것은 아니다. M2M 단말은 다른 무선 통신 네트워크에 기초하여 동작하는 것도 가능할 수 있으며, 상술한 실시 예로 한정되지 않는다.
또한, M2M 단말은 고정되거나 이동성을 가질 수 있다. 또한, M2M 서버는 M2M 통신을 위한 서버를 지칭하며 고정국(fixed station) 또는 이동국(mobile station)일 수 있다.
또한, 본 명세서에서 엔티티는 M2M 디바이스, M2M 게이트웨이, M2M 서버와 같은 하드웨어를 지칭할 수 있다. 또한, 일 예로, 엔티티는 M2M 시스템의 계층 구조에서 소프트웨어적인 구성을 지칭하는데 사용할 수 있으며, 상술한 실시 예로 한정되지 않는다.
또한, 일 예로, 본 개시는 M2M 시스템을 중심으로 설명되지만 본 개시는 M2M 시스템에만 제한적으로 적용되는 것은 아니다.
또한, M2M 서버는 M2M 단말 또는 다른 M2M 서버와 통신을 수행하는 서버일 수 있다. 또한, M2M 게이트웨이는 M2M 단말과 M2M 서버를 연결하는 연결점 역할을 수행할 수 있다. 일 예로, M2M 단말과 M2M 서버의 네트워크가 상이한 경우, M2M 게이트웨이를 통해 서로 연결될 수 있다. 이때, 일 예로, M2M 게이트웨이, M2M 서버 모두 M2M 단말일 수 있으며, 상술한 실시 예로 한정되지 않는다.
본 개시는 M2M(Machine-to-Machine) 시스템에서 데이터에 대한 라이선스(license)를 관리하기 위한 방법 및 장치에 대한 것이다. 보다 구체적으로, 본 개시는 M2M 시스템에서 종래의 수동적인 라이선스 관리와 달리 RESTful 기반의 API를 이용하여 라이선스 정보를 관리하는 기술에 대해 설명한다.
oneM2M은 에너지, 교통, 국방, 공공서비스 등 산업별로 종속적이고 폐쇄적으로 운영되는, 파편 화된 서비스 플랫폼 개발 구조를 벗어나 응용서비스 인프라(플랫폼) 환경을 통합하고 공유하기 위한 사물인터넷 공동서비스 플랫폼 개발을 위해 발족된 사실상 표준화 단체이다. oneM2M은 사물통신, IoT(Internet of Things) 기술을 위한 요구사항, 아키텍처, API(Application Program Interface) 사양, 보안 솔루션, 상호 운용성을 제공하고자 한다. 예를 들어, oneM2M의 사양은 스마트 시티, 스마트 그리드, 커넥티드 카, 홈 오토메이션, 치안, 건강과 같은 다양한 어플리케이션과 서비스를 지원하는 프레임워크를 제공한다. 이를 위해, oneM2M은 모든 어플리케이션들 사이에 데이터의 교환 및 공유를 위한 단일 수평 플랫폼을 정의하는 표준들의 집합을 개발해왔다. oneM2M에서 고려하는 어플리케이션들은 상이한 산업 부문들에 걸친 어플리케이션들도 포함할 수 있다. oneM2M은, 운영 체제처럼, 상이한 기술들과 연동하기 위한 프레임워크를 제공함으로써, 단일화를 촉진하는 분산된 소프트웨어 레이어를 생성하고 있다. 분산된 소프트웨어 레이어는 M2M 어플리케이션들과 데이터 전송을 제공하는 통신 HW(Hardware)/SW(Software) 사이에 위치하는 공통 서비스 계층에서 구현된다. 예를 들어, 공통 서비스 계층은 도 1과 같은 계층 구조의 일부를 차지할 수 있다.
도 1은 본 개시에 따른 M2M(Machine-to-Machine) 시스템의 계층 구조(layered structure)를 도시한다.
도 1를 참조하면, M2M 시스템의 계층 구조는 어플리케이션 계층(110), 공통 서비스 계층(120), 네트워크 서비스 계층(120)으로 구성될 수 있다. 이때, 어플리케이션 계층(110)은 구체적인 어플리케이션에 기초하여 동작하는 계층일 수 있다. 일 예로, 어플리케이션은 차량 추적 어플리케이션(fleet tracking application), 원거리 혈당 모니터링 어플리케이션(remote blood sugar monitoring application), 전략 계량 어플리케이션(power metering application) 또는 제어 어플리케이션(controlling application) 등일 수 있다. 즉, 어플리케이션 계층은 구체적인 어플리케이션에 대한 계층일 수 있다. 이때, 어플리케이션 계층에 기초하여 동작하는 엔티티는 어플리케이션 엔티티(Application Entity, AE)일 수 있다.
공통 서비스 계층(120)은 공통 서비스 펑션(Common Service Function, CSF)에 대한 계층일 수 있다. 일 예로, 공통 서비스 계층(120)은 데이터 관리(data management), 단말 관리(device management), M2M 서비스 구독 관리(M2M service subscription management), 위치 서비스(location Services) 등과 같이 공통 서비스 제공에 대한 계층일 수 있다. 일 예로, 공통 서비스 계층(120)에 기초하여 동작하는 엔티티는 공통 서비스 엔티티(Common Service Entity, CSE)일 수 있다.
공통 서비스 계층(120)은 기능에 의해 CSF로 그룹화되는 서비스들의 집합을 제공할 수 있다. 다수의 인스턴스화 된 CSF들은 CSE들을 형성한다. CSE들은 어플리케이션들(예: oneM2M 명명법에서 어플리케이션 엔티티들 또는 AE들), 다른 CSE들 및 기저 네트워크들(예: oneM2M 명명법에서 네트워크 서비스 엔티티 또는 NSE)과 인터페이스할 수 있다.
네트워크 서비스 계층(120)은 장치 관리(device management), 위치 서비스(location service) 및 장치 트리거링(device triggering)과 같은 서비스들을 공통 서비스 계층(120)에 제공할 수 있다. 이때, 네트워크 계층(120)에 기초하여 동작하는 엔티티는 네트워크 서비스 엔티티(Network Service Entity, NSE)일 수 있다.
도 2는 본 개시에 따른 M2M 시스템에서 기준점(reference point)을 도시한다.
도 2를 참조하면, M2M 시스템 구조는 필드 도메인(Field Domain) 및 인프라스트럭쳐 도메인(Infrastructure Domain)으로 구별될 수 있다. 이때, 각각의 도메인에서 각각의 엔티티들은 기준점(예: Mca 또는 Mcc)을 통해 통신을 수행할 수 있다. 일 예로, 기준점(reference point)은 각각의 엔티티들 간의 통신 흐름을 나타낼 수 있다. 이때, 도 2를 참조하면, AE(210 또는 240)와 CSE(220 또는 250) 사이의 기준점인 Mca 기준점, 서로 다른 CSE 사이의 기준점인 Mcc 기준점 및 CSE(220 또는 250)와 NSE(230 또는 260) 사이의 기준점인 Mcn 기준점이 설정될 수 있다.
도 3은 본 개시에 따른 M2M 시스템에서 각각의 노드를 도시한다.
도 3을 참조하면, 특정 M2M 서비스 제공자의 인프라스트럭쳐 도메인은 특정 인프라스트럭처 노드(310, Infrastructure Node, IN)를 제공할 수 있다. 이때, IN의 CSE는 다른 인프라스트럭쳐 노드의 AE와 Mca 기준점에 기초하여 통신을 수행할 수 있다. 이때, 하나의 M2M 서비스 제공자마다 하나의 IN이 설정될 수 있다. 즉, IN은 인프라스트럭쳐 구조에 기초하여 다른 인프라스트럭쳐의 M2M 단말과 통신을 수행하는 노드일 수 있다. 또한, 일 예로, 노드의 개념은 논리적 엔티티일 수 있으며, 소프트웨어적인 구성일 수 있다.
다음으로, 어플리케이션 지정 노드(320, Application Dedicated Node, ADN)는 적어도 하나의 AE를 포함하고, CSE를 포함하지 않는 노드일 수 있다. 이때, ADN은 필드 도메인에서 설정될 수 있다. 즉, ADN은 AE에 대한 전용 노드일 수 있다. 일 예로, ADN은 하드웨어적으로 M2M 단말에 설정되는 노드일 수 있다. 또한, 어플리케이션 서비스 노드(330, Application Service Node, ASN)는 하나의 CSE와 적어도 하나의 AE를 포함하는 노드일 수 있다. ASN은 필드 도메인에서 설정될 수 있다. 즉, AE 및 CSE를 포함하는 노드일 수 있다. 이때, ASN은 IN과 연결되는 노드일 수 있다. 일 예로, ASN은 하드웨어적으로 M2M 단말에 설정되는 노드일 수 있다.
또한, 미들 노드(340, Middle Node, MN)은 CSE를 포함하고, 0개 또는 그 이상의 AE를 포함하는 노드일 수 있다. 이때, MN은 필드 도메인에서 설정될 수 있다. MN은 다른 MN 또는 IN과 기준점에 기초하여 연결될 수 있다. 또한 일 예로, MN은 하드웨어적으로 M2M 게이트웨이에 설정될 수 있다.
또한, 일 예로, 논-M2M 단말 노드(350, Non-M2M device node, NoDN)은 M2M 엔티티들을 포함하지 않은 노드로서 M2M 시스템과 관리나 협업 등을 수행하는 노드일 수 있다.
도 4는 본 개시에 따른 M2M 시스템에서 공통 서비스 펑션을 도시한다.
도 4를 참조하면, 공통 서비스 펑션들이 제공될 수 있다. 일 예로, 공통 서비스 엔티티는 어플리케이션 및 서비스 계층 관리(402, Application and Service Layer Management), 통신 관리 및 전달 처리(404, Communication Management and Delivery Handling), 데이터 관리 및 저장(406, Data Management and Repository), 장치 관리(408, Device Management), 발견(410, Discovery), 그룹 관리(412, Group Management), 위치(414, Location), 네트워크 서비스 노출/서비스 실행 및 트리거링(416, Network Service Exposure/ Service Execution and Triggering), 등록(418, Registration), 보안(420, Security), 서비스 과금 및 계산(422, Service Charging and Accounting), 서비스 세션 관리 기능(Service Session Management) 및 구독/통지(424, Subscription/Notification) 중 적어도 어느 하나 이상의 CSF을 제공할 수 있다. 이때, 공통 서비스 펑션에 기초하여 M2M 단말들이 동작할 수 있다. 또한, 공통 서비스 펑션은 다른 실시 예도 가능할 수 있으며, 상술한 실시 예로 한정되지 않는다.
어플리케이션 및 서비스 계층 관리(402) CSF는 AE들 및 CSE들의 관리를 제공한다. 어플리케이션 및 서비스 계층 관리(402) CSF는 CSE의 기능들을 구성하고, 문제 해결하고, 및 업그레이드하는 것뿐만 아니라, AE들을 업그레이드하는 능력들을 포함한다.
통신 관리 및 전달 처리(404) CSF는 다른 CSE들, AE들, 및 NSE들과의 통신들을 제공한다. 통신 관리 및 전달 처리(404) CSF는 어떤 시간 및 어느 통신 연결로 통신들을 전달할지를 결정하고, 필요하고 허용되는 경우 그것들이 나중에 전달될 수 있도록 통신들 요청을 버퍼링하기로 결정한다.
데이터 관리 및 저장(406) CSF는 데이터 저장 및 중재 기능들(예: 집결을 위한 데이터 수집, 데이터 리포맷팅, 및 분석 및 시멘틱 처리를 위한 데이터 저장)을 제공한다.
장치 관리(408) CSF는 M2M 게이트웨이들 및 M2M 디바이스들 상에서 디바이스 능력들의 관리를 제공한다.
발견(410) CSF는 필터 기준들에 기초하여 어플리케이션들 및 서비스들에 대한 정보를 검색하는 기능을 제공한다.
그룹 관리(412) CSF는 그룹 관련 요청들의 처리를 제공한다. 그룹 관리(412) CSF는 M2M 시스템이 여러 디바이스들, 어플리케이션들 등에 대한 대량 작업들(bulk operations)을 지원하는 것을 가능하게 한다.
위치(414) CSF는 AE들이 지리적 장소 정보를 획득하는 것을 가능하게 하는 기능을 제공한다.
네트워크 서비스 노출/서비스 실행 및 트리거링(416) CSF는 네트워크 서비스 기능들에 액세스하기 위한 기저 네트워크들과의 통신들을 관리한다.
등록(418) CSF는 AE들(또는 다른 원격 CSE들)이 CSE에 등록하기 위한 기능을 제공한다. 등록(418) CSF는 AE들(또는 원격 CSE)이 CSE의 서비스들을 사용하는 것을 허용한다.
보안(420) CSF는 식별, 인증, 및 허가를 포함하는 액세스 제어와 같은 서비스 레이어에 대한 보안 기능들을 제공한다.
서비스 과금 및 계산(422) CSF는 서비스 레이어에 대한 과금 기능들을 제공한다.
구독/통지(424) CSF는 이벤트에 가입하는 것을 허용하고, 해당 이벤트가 발생할 때 통지되는 기능을 제공한다.
도 5는 본 개시에 따른 M2M 시스템에서 송신자 및 수신자가 메시지를 교환하는 방법을 도시한다.
도 5를 참조하면, 발생자(originator, 510)는 요청 메시지를 수신자(receiver, 520)로 전송할 수 있다. 이때, 발생자(510)와 수신자(520)는 상술한 M2M 단말일 수 있다. 다만, M2M 단말에 한정되지 않고, 발생자(510)와 수신자(520)는 다른 단말일 수 있으며, 상술한 실시 예로 한정되지 않는다. 또한, 일 예로, 발생자(510) 및 수신자(520)는 상술한 노드, 엔티티, 서버 또는 게이트웨이일 수 있다. 즉, 발생자(510) 및 수신자(520)는 하드웨어적인 구성 또는 소프트웨어적인 구성일 수 있으며, 상술한 실시 예로 한정되지 않는다.
이때, 일 예로, 발생자(510)가 전송하는 요청 메시지에는 적어도 하나의 파라미터가 포함될 수 있다. 이때, 일 예로, 파라미터는 필수 파라미터 또는 선택 파라미터가 있을 수 있다. 일 예로, 송신단과 관련된 파라미터, 수신단과 관련된 파라미터, 식별 파라미터 및 동작 파라미터 등은 필수적인 파라미터일 수 있다. 또한, 그 밖에 다른 정보에 대해서는 선택 파라미터일 수 있다. 이때, 송신단 관련 파라미터는 발생자(510)에 대한 파라미터일 수 있다. 또한, 수신단 관련 파라미터는 수신자(520)에 대한 파라미터일 수 있다. 또한, 식별 파라미터는 상호 간의 식별을 위해 요구되는 파라미터일 수 있다.
또한, 동작 파라미터는 동작을 구분하기 위한 파라미터일 수 있다. 일 예로, 동작 파라미터는 생성(Create), 조회(Retrieve), 갱신(Update), 삭제(Delete) 및 통지(Notify) 중 적어도 어느 하나로 설정될 수 있다. 즉, 동작을 구별하기 위한 파라미터일 수 있다.
이때, 수신자(520)는 발생자(510)로부터 요청 메시지를 수신하면 해당 요청 메시지를 처리할 수 있다. 일 예로, 수신자(520)는 요청 메시지에 포함된 동작을 수행할 수 있으며, 이를 위해 파라미터가 유효한지 여부 및 권한이 있는지 여부 등을 판단할 수 있다. 이때, 수신자(520)는 파라미터가 유효하고, 권한이 있다면 요청 대상이 되는 자원 존재하는지 여부를 확인하고, 이에 기초하여 프로세싱을 수행할 수 있다.
일 예로, 이벤트가 발생하는 경우, 발생자(510)는 수신자(520)에게 통지에 대한 파라미터를 포함하는 요청 메시지를 전송할 수 있다. 수신자(520)는 요청 메시지에 포함된 통지에 대한 파라미터를 확인하고, 이에 기초하여 동작을 수행할 수 있으며, 응답 메시지를 발생자(510)로 다시 전송할 수 있다.
도 5와 같은 요청 메시지 및 응답 메시지를 이용한 메시지 교환 절차는 Mca 기준점에 기반하여 AE 및 CSE 간 또는 Mcc 기준점에 기반하여 CSE들 간 수행될 수 있다. 즉, 발생자(510)는 AE 또는 CSE이고, 수신자(520)는 AE 또는 CSE일 수 있다. 요청 메시지 내의 동작에 따라, 도 5와 같은 메시지 교환 절차는 AE 또는 CSE에 의해 시작될(initiated) 수 있다.
기준점 Mca 및 Mcc를 통한 요청자로부터 수신자로의 요청은 적어도 하나의 필수적인(mandatory) 파라미터를 포함하고, 적어도 하나의 선택적인(optional) 파라미터를 포함할 수 있다. 즉, 정의된 각 파라미터는 요청되는 동작(operation)에 따라 필수적이거나 선택적일 수 있다. 예를 들어, 응답 메시지는 이하 [표 1]에 나열된 파라미터들 중 적어도 하나를 포함할 수 있다.
Response message parameter/success or not
Response Status Code - successful, unsuccessful, ack
Request Identifier - uniquely identifies a Request message
Content - to be transferred
To - the identifier of the Originator or the Transit CSE that sent the corresponding non-blocking request
From - the identifier of the Receiver
Originating Timestamp - when the message was built
Result Expiration Timestamp - when the message expires
Event Category - what event category shall be used for the response message
Content Status
Content Offset
Token Request Information
Assigned Token Identifiers
Authorization Signature Request Information
Release Version Indicator - the oneM2M release version that this response message conforms to
요청 메시지 또는 응답 메시지에서 사용될 수 있는 필터 기준 조건(filter criteria condition)은 이하 [표 2] 및 [표 3]과 같이 정의될 수 있다.
Condition tag Multiplicity Description
Matching Conditions
createdBefore 0..1 The creationTime attribute of the matched resource is chronologically before the specified value.
createdAfter 0..1 The creationTime attribute of the matched resource is chronologically after the specified value.
modifiedSince 0..1 The lastModifiedTime attribute of the matched resource is chronologically after the specified value.
unmodifiedSince 0..1 The lastModifiedTime attribute of the matched resource is chronologically before the specified value.
stateTagSmaller 0..1 The stateTag attribute of the matched resource is smaller than the specified value.
stateTagBigger 0..1 The stateTag attribute of the matched resource is bigger than the specified value.
expireBefore 0..1 The expirationTime attribute of the matched resource is chronologically before the specified value.
expireAfter 0..1 The expirationTime attribute of the matched resource is chronologically after the specified value.
labels 0..1 The labels attribute of the matched resource matches the specified value.
labelsQuery 0..1 The value is an expression for the filtering of labels attribute of resource when it is of key-value pair format. The expression is about the relationship between label-key and label-value which may include equal to or not equal to, within or not within a specified set etc. For example, label-key equals to label value, or label-key within {label-value1, label-value2}. Details are defined in [3]
childLabels 0..1 A child of the matched resource has labels attributes matching the specified value. The evaluation is the same as for the labels attribute above. Details are defined in [3].
parentLabels 0..1 The parent of the matched resource has labels attributes matching the specified value. The evaluation is the same as for the labels attribute above. Details are defined in [3].
resourceType 0..n The resourceType attribute of the matched resource is the same as the specified value. It also allows differentiating between normal and announced resources.
childResourceType 0..n A child of the matched resource has the resourceType attribute the same as the specified value.
parentResourceType 0..1 The parent of the matched resource has the resourceType attribute the same as the specified value.
sizeAbove 0..1 The contentSize attribute of the <contentInstance> matched resource is equal to or greater than the specified value.
sizeBelow 0..1 The contentSize attribute of the <contentInstance> matched resource is smaller than the specified value.
contentType 0..n The contentInfo attribute of the <contentInstance> matched resource matches the specified value.
attribute 0..n This is an attribute of resource types (clause 9.6). Therefore, a real tag name is variable and depends on its usage and the value of the attribute can have wild card *. E.g. creator of container resource type can be used as a filter criteria tag as "creator=Sam", "creator=Sam*", "creator=*Sam".
childAttribute 0..n A child of the matched resource meets the condition provided. The evaluation of this condition is similar to the attribute matching condition above.
parentAttribute 0..n The parent of the matched resource meets the condition provided. The evaluation of this condition is similar to the attribute matching condition above.
semanticsFilter 0..n Both semantic resource discovery and semantic query use semanticsFilter to specify a query statement that shall be specified in the SPARQL query language [5]. When a CSE receives a RETRIEVE request including a semanticsFilter, and the Semantic Query Indicator parameter is also present in the request, the request shall be processed as a semantic query; otherwise, the request shall be processed as a semantic resource discovery. 
In the case of semantic resource discovery targeting a specific resource, if the semantic description contained in the <semanticDescriptor> of a child resource matches the semanticFilter, the URI of this child resource will be included in the semantic resource discovery result.
 
In the case of semantic query, given a received semantic query request and its query scope, the SPARQL query statement shall be executed over aggregated semantic information collected from the semantic resource(s) in the query scope and the produced output will be the result of this semantic query.
 
Examples for matching semantic filters in SPARQL to semantic descriptions can be found in [i.28].
filterOperation  0..1 Indicates the logical operation (AND/OR) to be used for different condition tags. The default value is logical AND.
contentFilterSyntax 0..1 Indicates the Identifier for syntax to be applied for content-based discovery.
contentFilterQuery 0..1 The query string shall be specified when contentFilterSyntax parameter is present.
Condition tag Multip-licity Description
Filter Handling Conditions
filterUsage 0..1 Indicates how the filter criteria is used. If provided, possible values are 'discovery' and 'IPEOnDemandDiscovery'.
If this parameter is not provided, the Retrieve operation is a generic retrieve operation and the content of the child resources fitting the filter criteria is returned.
If filterUsage is 'discovery', the Retrieve operation is for resource discovery (clause 10.2.6), i.e. only the addresses of the child resources are returned.
If filterUsage is 'IPEOnDemandDiscovery', the other filter conditions are sent to the IPE as well as the discovery Originator ID. When the IPE successfully generates new resources matching with the conditions, then the resource address(es) shall be returned. This value shall only be valid for the Retrieve request targeting an <AE> resource that represents the IPE.
limit 0..1 The maximum number of resources to be included in the filtering result. This may be modified by the Hosting CSE. When it is modified, then the new value shall be smaller than the suggested value by the Originator.
level 0..1 The maximum level of resource tree that the Hosting CSE shall perform the operation starting from the target resource (i.e. To parameter). This shall only be applied for Retrieve operation. The level of the target resource itself is zero and the level of the direct children of the target is one.
offset 0..1 The number of direct child and descendant resources that a Hosting CSE shall skip over and not include within a Retrieve response when processing a Retrieve request to a targeted resource.
applyRelativePath 0..1 This attribute contains a resource tree relative path (e.g. ../tempContainer/LATEST). This condition applies after all the matching conditions have been used (i.e. a matching result has been obtained). The attribute determines the set of resource(s) in the final filtering result. The filtering result is computed by appending the relative path to the path(s) in the matching result. All resources whose Resource-IDs match that combined path(s) shall be returned in the filtering result. If the relative path does not represent a valid resource, the outcome is the same as if no match was found, i.e. there is no corresponding entry in the filtering result.
기준점 Mca 및 Mcc를 통한 자원으로의 접근(accessing)에 대한 요청에 대응한 응답은 적어도 하나의 필수적인(mandatory) 파라미터를 포함하고, 적어도 하나의 선택적인(optional) 파라미터를 포함할 수 있다. 즉, 정의된 각 파라미터는 요청되는 동작(operation) 또는 필수 응답 코드(mandatory response code)에 따라 필수적이거나 선택적일 수 있다. 예를 들어, 요청 메시지는 이하 [표 4]에 나열된 파라미터들 중 적어도 하나를 포함할 수 있다.
Request message parameter
Mandatory Operation - operation to be executed / CREAT, Retrieve, Update, Delete, Notify
To - the address of the target resource on the target CSE
From - the identifier of the message Originator
Request Identifier - uniquely identifies a Request message
Operation dependent Content - to be transferred
Resource Type - of resource to be created
Optional Originating Timestamp - when the message was built
Request Expiration Timestamp - when the request message expires
Result Expiration Timestamp - when the result message expires
Operational Execution Time - the time when the specified operation is to be executed by the target CSE
Response Type - type of response that shall be sent to the Originator
Result Persistence - the duration for which the reference containing the responses is to persist
Result Content - the expected components of the result
Event Category - indicates how and when the system should deliver the message
Delivery Aggregation - aggregation of requests to the same target CSE is to be used
Group Request Identifier - Identifier added to the group request that is to be fanned out to each member of the group
Group Request Target Members-indicates subset of members of a group
Filter Criteria - conditions for filtered retrieve operation
Desired Identifier Result Type - format of resource identifiers returned
Token Request Indicator - indicating that the Originator may attempt Token Request procedure (for Dynamic Authorization) if initiated by the Receiver
Tokens - for use in dynamic authorization
Token IDs - for use in dynamic authorization
Role IDs - for use in role based access control
Local Token IDs - for use in dynamic authorization
Authorization Signature Indicator - for use in Authorization Relationship Mapping
Authorization Signature - for use in Authorization Relationship Mapping
Authorization Relationship Indicator - for use in Authorization Relationship Mapping
Semantic Query Indicator - for use in semantic queries
Release Version Indicator - the oneM2M release version that this request message conforms to.
Vendor Information
일반 자원(normal resource)은 관리될 정보의 기저(base)를 구성하는 데이터의 표현(representation)의 완전한 집합을 포함한다. 가상(virtual) 또는 선언된(announced)이 아닌 한, 본 문서에서 자원 종류(type)는 일반 자원으로 이해될 수 있다.
가상 자원(virtual resource)은 처리(processing) 및/또는 검색 결과(retrieve result)를 트리거링하기 위해 사용된다. 하지만, 가상 자원은 CSE 내에서 영구적인(permanent) 표현을 가지지 아니한다.
선언된 자원(announced resource)은 오리지널(original) 자원의 어트리뷰트들(attributes)의 집합을 포함한다. 오리지널 자원이 변화할 때, 선언된 자원은 오리지널 자원의 호스팅(hosting) CSE에 의해 자동적으로 갱신된다. 선언된 자원은 오리지널 자원으로의 링크(link)를 포함한다.
자원 선언(resource announcement)은 자원 발견(resource discovery)을 가능하게 한다. 원격(remote) CSE에서의 선언된 자원은 원격 CSE에서, 오리지널 자원의 자식(children)으로서 존재하지(present) 아니하거나 선언된 자식이 아닌, 자식 자원(child resource)을 생성하기 위해 사용될 수 있다.
자원의 선언을 지원하기 위해, 자원 템플릿(template) 내의 추가적인 열(column)이 관련된 선언된 자원 타입 내의 포함을 위해 선언될 속성을 특정할 수 있다. 각 선언된 <resourceType>에 대하여, 오리지널 <resourceType>으로의 접미사 'Annc'의 추가가 관련된 선언된 자원 종류를 지시하기 위해 사용될 수 있다. 예를 들어, 자원 <containerAnnc>는 <container> 자원을 위한 선언된 자원 종류를 지시할 수 있고, <groupAnnc>는 <group>을 위한 선언된 자원 종류를 지시할 수 있다.
데이터에 대한 라이선스(이하 '데이터 라이선스')의 관리를 지원하는 다양한 방안들이 존재할 수 있다. 본 개시는 복잡한 관리 매커니즘이 데이터 라이선스 관리에 관련된 다양한 정보를 관리하기 위해 요구되는 경우에 관련된다. 예를 들어, 데이터세트가 게재되면(publish), 라이선스가 데이터세트에 적용될 것이다. 라이선스는 다른자들이 무언가를 사용하거나 소유하는 것 대한 소유자의 공식적인 허가로서 동작하는 다양한 정보들로 구성된다. 예를 들어, 다른자들은 공유된 또는 가용한 데이터세트를 어떻게 사용할 수 있는지를 정확히 알 필요가 있다. 시스템이 데이터를 제어하는 수단을 제공하지 아니하더라도, 라이선스 기법에 포함되는 정보는 다른자들이 데이터세트를 사용할 필요가 있는 때에 유용하다. 그러므로, 본 개시는 라이선스 기법을 서술하기 위해 필요한 정보를 보유한 새로운 자원을 제안한다.
현존하는 시스템의 경우, 다음과 같은 동작이 가능하지 아니하다. 데이터 또는 데이터세트에 데이터 라이선스 정보(data license information)를 추가하는 것, 복제된 데이터가 주어진 데이터 라이선스를 적절히 따르고 있는지 검사하는 것, 데이터가 공유되는 경우 플랫폼들 간 데이터 라이선스 정보를 교환하는 것 등이 지원되지 아니한다. 따라서, 본 개시는 IoT 플랫폼에서 데이터 라이선스 관리를 지원하기 위한 다양한 기능들을 추가하는 기술을 제안한다.
oneM2M은 RESTful(Representational State Transfer) 구조를 사용한다. API는 자원에 대한 동작의 수행을 요청한다. 여기서, 동작은 생성, 검색, 갱신, 삭제를 포함한다. CSE들은 라이선스에 기반한 자원 접근의 사용에 대해 판단할 수 없다. CSE는 명확한 규칙 지시를 필요로 하며, 예를 들어, 각 자원에 대하여, 어느 라이선스가 해당 자원에 관련되는지, 자원 규정이 무엇이고 무엇이 허용되는지 등과 같은 명확한 규칙 지시를 필요로 한다.
라이선스 기법을 기술하기 위해 어느 종류의 정보가 필요한지를 아는 것이 필요하다. 데이터 라이선스 관리는 적절한 라이선스 관리를 지원하기 위한 다양한 정보를 요구한다. 그러한 정보는 <dataLicenseMgt>라 불리우는 자원으로 모델링될 수 있다. 특정 라이선스 기법에 따라 관리될 필요가 있는 자원은 특정 라이선스 기법을 시행하는 <dataLicenseMgt> 자원과 연계될 수 있다. <dataLicenseMgt> 자원은 동의(consent)의 목적 및 관련 정보를 저장하기 위해 사용될 수 있다. <dataLicenseMgt> 자원의 일 예는 이하 도 6과 같다.
도 6은 본 개시에 따른 M2M 시스템에서 데이터에 대한 라이선스(license)를 관리하기 위한 자원의 예를 도시한다. 도 6을 참고하면, 라이선스를 관리하기 위한 자원, 예를 들어, <dataLicenseMgt> 자원은 'termOfRef' 어트리뷰트(611), 'licenseAck' 어트리뷰트(612), 'licenseType' 어트리뷰트(613), 'creationTime' 어트리뷰트(614), 'expirationTime' 어트리뷰트(615), 'providerID' 어트리뷰트(616), 'creatorID' 어트리뷰트(617), 'restrictionID' 어트리뷰트(618), 'availableOperation' 어트리뷰트(619), 'userID' 어트리뷰트(620), 'linkOriginalLicense' 어트리뷰트(621), 'modifiedTag' 어트리뷰트(622), 'usageCheck' 어트리뷰트(623) 중 적어도 하나를 포함할 수 있다. 나열된 각 어트리뷰트의 의미는 이하 [표 5]와 같다.
어트리뷰트 설명(description)
termOfRef 데이터 라이선스의 규정(terms of data license). 데이터와 함께 제공되는 헤더 또는 저작권 설명(The header or copyright statements that comes with the data).
licenseAck 데이터의 소스에 대한 ACK(acknowledgement the source of data). 정보 제공자에 의해 특정된 속성 설명을 포함(include any attribution statement specified by the Information Provider). 가능한 경우, 본 라이선스로의 링크를 제공(where possible, provide a link to this licence).
licenseType 데이터 라이선스의 종류(types of data license). 어떤 종류의 데이터 라이선스가 적용되는지 지시(indicate which types of data license is applied).
creationTime 데이터 라이선스의 생성 날짜(creation date of data license). 언제 데이터 라이선스가 생성되었는지 지시(indicate when the data license is created).
expirationTime 데이터 라이선스의 만료(expiration of data license). 언제 데이터 라이선스가 만료되는지 지시(indicate when the data license is expiring).
providerID 데이터의 제공자를 지시(indicate the provider of data).
creatorID 데이터의 창작자를 지시(indicate the creator of data).
restrictionID 데이터 사용의 적격(eligibility of using data). 데이터의 제공자가 데이터의 사용을 특정 사용자들 또는 그룹들에 제한하고자 하는 경우, 본 어트리뷰트에 해당 정보를 포함시킬 수 있음(If the provider of data wants to limit the use of data to specific users or groups, they can include such information in this attribute).
availableOperation 가용한 동작(available operations). 주어진 데이터세트에 대하여 어떤 종류의 동작들이 가용한지에 대한 정보를 제공(Provide information about what kinds of operations are available to the given dataset). 수정(modify), 복제(copy), 공공으로 개방(publish to public), 번역(translate), 각색(adapt), 배포(distribute)가 가용한 옵션들임.
userID 데이터의 사용자(users of data). 어느 플랫폼 또는 사용자가 본 데이터를 사용하였는지에 대한 정보를 포함(include information which platforms or users have used this data)
linkOriginalLicense 데이터 라이선스의 원본 소스(original source of data license). 원본 라이선스로의 링크를 지시(indicate a link to the original license).
modifiedTag 데이터의 수정(modification of data). 데이터가 수정되었는지 여부를 지시(indicate whether the data is modified).
usageCheck 사용 검사(usage checking). 사용 검사가 필요한지를 지시(indicate that the usage check is needed).
일 실시 예에 따라, [표 5]에 나열된 어트리뷰트들 중 적어도 하나가 <dataLicenseMgt> 자원에 포함될 수 있다. 다른 실시 예에 따라, [표 5]에 나열된 어트리뷰트들 중 적어도 하나를 대체하여 또는 부가적으로, <dataLicenseMgt> 자원은 원본 데이터세트로의 링크(link to the original data set)를 지시하는 데이터의 원본 소스(original source of data)에 관련된 어트리뷰트를 포함할 수 있다.
도 7은 본 개시에 따른 M2M 시스템에서 라이선스 및 자원 간 연결 관계의 예를 도시한다. 도 7을 참고하면, 3개의 라이선스들(721, 722, 723)이 존재할 수 있다. 3개의 라이선스들(721, 722, 723) 각각은 사용자, 그룹, 자원 등과 링크를 가질 수 있다. 구체적으로, 라이선스1(721)은 CSE(712)와 링크를 가지고, 라이선스2(722)는 그룹1(714) 및 자원1(716)과 링크를 가지고, 라이선스3(723)은 자원2(718)와 링크를 가질 수 있다. M2M 플랫폼의 CSE(712), 그룹1(714), 자원1(716), 자원2(718) 등이 라이선스로의 링크를 가지기 위해서, 데이터 라이선스의 관리에 관련된 자원, 예를 들어, <dataLicenseMgt> 자원이 가용해야 한다.
도 8은 본 개시에 따른 M2M 시스템에서 라이선스 관련 자원에 기반하여 데이터를 처리하는 절차의 예를 도시한다. 도 8의 동작 주체는 데이터 라이선스에 기반하여 동작하는 어플리케이션 또는 CSE를 실행하는 장치일 수 있다. 이하 설명에서, 도 8의 동작 주체는 '장치'라 지칭된다.
도 8을 참고하면, S801 단계에서, 장치는 라이선스를 관리하기 위한 정보를 포함하는 자원을 생성한다. 다시 말해, 장치는 라이선스에 관련된 적어도 하나의 어트리뷰트를 포함하는 자원을 생성한다. 라이선스를 관리하기 위한 정보를 포함하는 자원은 해당 라이선스에 따르는 데이터를 포함하는 자원과 연계된다. 즉, 장치는 데이터를 포함하는 자원을 생성한 후, 데이터의 라이선스를 관리하기 위한 정보를 포함하는 자원을 생성할 수 있다. 여기서, 자원의 생성은 장치 또는 다른 장치에서 수행될 수 있다. 즉, 본 단계의 자원을 생성함은, 장치가 스스로 해당 자원을 생성하는 동작 또는 다른 장치에게 해당 자원의 생성을 요청하는 동작으로 이해될 수 있다. 예를 들어, 라이선스를 관리하기 위한 정보는 라이선스의 내용에 대한 정보, 라이선스에 의해 허용되는 동작에 대한 정보, 라이선스의 유효성에 대한 정보, 해당 데이터의 사용 이력에 대한 정보, 라이선스의 검사에 대한 정보 중 적어도 하나를 포함할 수 있다.
S803 단계에서, 장치는 라이선스 관리에 관련된 동작을 수행한다. 라이선스 관리에 관련된 동작은 라이선스를 가지는 데이터를 사용하고자 할 때, 적법한 라이선스를 가진 주체가 적법한 동작을 위해 해당 데이터에 접근하는지 여부를 확인하는 동작으로 이해될 수 있다. 예를 들어, 장치는 라이선스를 가지는 데이터에 대한 발견(discovery), 검색(retieve), 수정(modification), 복제(copy), 공개(publish) 등에 대한 동작을 수행하거나 또는 해당 동작의 수행에 대한 요청을 수신하면, 동작 주체가 적절한 라이선스를 보유하고 있는지 여부를 먼저 검사하고, 해당 동작을 직접 수행 또는 보조할 수 있다. 또는, 장치는 라이선스를 가지는 데이터에 대한 동작을 수행한 후, 라이선스에 대한 정보가 올바로 저장되었는지 검사 또는 확인할 수 있다.
전술한 실시 예들에 따라, 데이터 라이선스에 대한 정보에 기반하여 라이선스를 가지는 데이터에 관련된 동작(들)이 수행될 수 있다. 몇몇 사용 예(use case)들은 다음과 같다.
일 실시 예에 따라, 데이터 라이선스의 올바른 사용이 검사될 수 있다. 데이터의 세트가 다른 플랫폼으로 복제된 후, 데이터 세트의 올바른 사용이 검사될 수 있다. 소스 플랫폼은 ACK, 데이터의 소스 및 데이터 라이선스를 얻기 위해 검색(retrieval) 요청을 사용할 수 있다.
일 실시 예에 따라, 데이터에 대한 적격한(eligible) 동작인지 여부가 검사될 수 있다. 어플리케이션이 데이터를 사용(예: 다른 어플리케이션으로 데이터를 복제 또는 공유)하는 것을 시도하면 언제든지, 플랫폼은 주어진 데이터 라이선스에 기반하여 데이터에 대한 가용한 동작인지를 검사할 수 있다. 어플리케이션으로부터 요청된 동작이 가용한 동작들에 포함되지 아니하면, 요청은 거부될 것이다.
일 실시 예에 따라, 자동 검증(automatic validation)이 수행될 수 있다. 데이터의 세트가 IoT 서비스들을 위해 이용되기 위해 다른 플랫폼으로 복제된 후, 소스 플랫폼은 타겟 플랫폼의 올바른 사용 또는 설정을 자동적으로 검사할 수 있다. 복제 또는 교환 프로세스의 후단에서, 소스 플랫폼이 타겟 플랫폼과 검사하는 추가적 단계들이 존재할 수 있다. 추가적 단계들은 타겟 플랫폼으로부터의 ACK, 적절한 허용되는 동작, 소스 링크를 검색할 수 있다. 이러한 정보가 적절하게 설정되지 아니하면, 동작은 취소될 것이다.
도 9는 본 개시에 따른 M2M 시스템에서 라이선스 관련 자원에 기반하여 자원을 발견(discovery)하는 절차의 예를 도시한다. 도 9는 AE(910), IN-CSE(920) 간 신호 교환을 예시한다. 도 9에서, AE(910)가 특정 자원을 발견하고자 한다.
도 9를 참고하면, S901 단계에서, AE(910)는 IN-CSE(920)에게 특정 라이선스에 따르는(under) 자원들에 대한 발견(discovery)을 요청한다. 다시 말해, AE(910)는 특정 라이선스와 관련된 자원들에 대한 정보를 요청한다. 이를 위해, AE(910)는 발견을 위해 사용되는 라이선스 등급(예: CC-BY)을 포함하는 요청 메시지를 송신한다.
S903 단계에서, IN-CSE(920)는 요청된 발견을 위한 로컬 처리를 수행한다. 예를 들어, IN-CSE(920)는 S901 단계에서 수신된 요청 메시지에 의해 지시되는 라이선스에 따르는 자원들을 확인한다. 다시 말해, IN-CSE(920)는 요청된 라이선스 등급(예: CC-BY)에 따르는 데이터를 포함하는 적어도 하나의 자원을 확인한다. 여기서, CC-BY는 저작물을 사용할 때에 원저작자를 표기하는 것이 요구되는 등급이다. 이때, 일 실시 예에 따라, IN-CSE(920)는 확인된 자원에 연계되는(associated) 라이선스를 관리하기 위한 자원에 포함된 정보에 기반하여, AE(910)의 발견 동작이 허용되는지 여부를 판단할 수 있다. 예를 들어, 라이선스를 관리하기 위한 자원에 사용 검사에 대한 어트리뷰트가 긍정의 값(예: 1)으로 설정되어 있는 경우, IN-CSE(920)는 허용되는 동작에 대한 정보(예: availableOperation)에 기반하여 발견 동작이 허용되는지 여부를 판단할 수 있다.
S905 단계에서, IN-CSE(920)는 AE(910)에게 응답 메시지를 송신한다. 응답 메시지는, AE(910)에 의해 요청된 특정 라이선스에 관련된 자원들에 대한 정보를 포함한다. 예를 들어, 자원들에 대한 정보는 자원에 접근하기 위해 필요한 정보로서, 자원의 주소, 자원의 목록 등을 포함할 수 있다.
도 9를 참고하여 설명한 실시 예와 같이, 라이선스-기반 발견 절차가 수행될 수 있다. 도 9에 예시된 절차는 특정 라이선스에 기반하여 자원들을 발견하는 것을 가능케한다. 예를 들어, CC0에 따르는 가용한 개방 센서 데이터에 기반하여 일기 예보를 보여주는 서비스를 제공하고자 하는 IoT 어플리케이션은 CC0에 따르는 날씨 센서 데이터를 보유한 자원을 발견할 수 있다. 여기서, CC0는 데이터세트의 제공자 또는 소유자에 대한 언급 없이도 주어진 데이터세트를 이용하여 누구나 무엇이든 할 수 있는 등급을 의미한다.
도 10은 본 개시에 따른 M2M 시스템에서 라이선스 관련 자원에 기반하여 자원을 검색하는 절차의 예를 도시한다. 도 10은 AE(1010), IN-CSE#1(1020-1), IN-CSE#2(1020-2) 간 신호 교환을 예시한다. 도 10에서, AE(1010)는 자원의 생성을 위한 발생자(originator)이고, IN-CSE#1(1020-1)는 원본 자원을 호스팅하며, IN-CSE#2(1020-2)는 데이터를 소비하는 AE(예: 웹 인터페이스)에 관련된다.
도 10을 참고하면, S1001 단계에서, AE(1010)는 특정 라이선스에 따르는 자원에 대한 검색을 요청한다. 다시 말해, AE(1010)는 특정 라이선스와 관련된 자원에 포함되는 데이터를 요청한다. 이를 위해, AE(1010)는 검색을 위한 자원을 지시하는 정보를 포함하는 요청 메시지를 송신한다. 여기서, 자원은 특정 라이선스에 의해 지시되거나 또는 자원에 대한 식별정보에 의해 지시될 수 있다.
S1003 단계에서, IN-CSE#1(1020-1)은 AE(1010)에게 응답 메시지를 송신한다. 응답 메시지는 S1001 단계의 요청에 응하여 송신된다. 응답 메시지는 AE(1010)에 의해 요청된 자원에 대한 정보를 포함한다. 즉, IN-CSE#1(1020-1)은 S1001 단계에서 수신된 요청 메시지에 의해 지시되는 자원을 확인하고, 해당 자원에 포함된 데이터를 포함하는 응답 메시지를 송신할 수 있다. 이에 따라, AE(1010)는 요청된 자원에 포함된 데이터를 획득할 수 있다. 이때, 일 실시 예에 따라, IN-CSE#1(1020-1)은 요청된 자원에 연계되는(associated) 라이선스를 관리하기 위한 자원에 포함된 정보에 기반하여, AE(1010)의 검색 동작이 허용되는지 여부를 판단할 수 있다. 예를 들어, 라이선스를 관리하기 위한 자원에 사용 검사에 대한 어트리뷰트(예: usageCheck)가 긍정의 값(예: 1)으로 설정되어 있는 경우, IN-CSE#1(1020-1)는 허용되는 동작에 대한 정보(예: availableOperation)에 기반하여 검색 동작이 허용되는지 여부를 판단할 수 있다.
S1005 단계에서, AE(1010)는 IN-CSE#2(1020-2)에게 특정 라이선스에 따르는 검색된 자원을 추가하기 위한 자원의 생성을 요청한다. AE(1010)는 IN-CSE#1(1020-1)로부터 획득한 자원을 IN-CSE#2(1020-2)로 전달하기 위한 동작들을 시작한다. 즉, AE(1010)는 특정 라이선스에 따르는 자원의 생성을 요청한다. 이를 위해, AE(1010)는 IN-CSE#2(1020-2)에게 특정 라이선스에 따르는 자원에 대한 정보, 특정 라이선스에 관련된 정보를 포함하는 요청 메시지를 송신할 수 있다.
S1007 단계에서, IN-CSE#2(1020-2)는 주어진 라이선스를 이용하여 요청된 자원을 생성한다. 즉, IN-CSE#2(1020-2)는 적어도 하나의 자원을 생성하고, 주어진 라이선스에 대한 정보를 생성된 적어도 하나의 자원에 추가한다. 다시 말해, IN-CSE#2(1120-2)는 IN-CSE#1(1120-1)의 요청에 따라 적어도 하나의 자원을 생성하고, 생성된 적어도 하나의 자원에 라이선스 관련 정보를 저장한다. 여기서, 라이선스 관련 정보는 해당 자원이 S1005 단계에서 지시된 특정 라이선스에 따름을 지시할 수 있다. 예를 들어, CSE#2(1120-2)는 요청된 자원을 생성하고, 요청된 자원에 대응하는 라이선스에 관련된 자원을 생성할 수 있다.
S1009 단계에서, IN-CSE#2(1020-2)는 AE(1010)에게 응답 메시지를 송신한다. 응답 메시지는 S1005 단계의 요청에 응하여 송신된다. 응답 메시지는 요청된 자원들의 생성에 관련된 정보, 생성된 자원에 대한 정보 중 적어도 하나를 포함할 수 있다. 이에 따라, AE(1010)는 요청된 자원이 IN-CSE#2(1020-2)에 생성됨을 확인할 수 있다.
S1011 단계에서, AE(1010)는 IN-CSE#1(1020-1)에게 사용된 라이선스 ID에 대한 갱신을 요청한다. 이를 위해, AE(1010)는 사용된 새로운 라이선스 ID에 대한 정보를 포함하는 요청 메시지를 송신할 수 있다. 여기서, 라이선스 ID는 해당 자원에 포함된 데이터를 사용할 수 있는 플랫폼 또는 사용자를 지시하는 정보로서, 예를 들어, [표 5]의 userID에 상응할 수 있다. AE(1010)에 의해 IN-CSE#2(1020-2)에 특정 라이선스에 따르는 자원이 생성되었으므로, AE(1010)는 IN-CSE#1(1020-1)에 저장된 자원에 IN-CSE#2(1020-2)가 해당 데이터를 사용하였음이 기록되도록 라이선스 ID의 갱신을 요청할 수 있다.
S1013 단계에서, IN-CSE#1(1020-1)은 AE(1010)에게 응답 메시지를 송신한다. 응답 메시지는 S1011 단계의 요청에 응하여 송신된다. 즉, IN-CSE#1(1020-1)은 S1011 단계의 요청 메시지에 따라 라이선스 ID를 갱신한 후, 갱신 완료를 알리는 응답을 송신할 수 있다.
S1015 단계에서, IN-CSE#2(1020-2)는 IN-CSE#1(1020-1)에게 생성된 자원을 위한 라이선스에 대한 검색을 요청한다. IN-CSE#2(1020-2)는 S1007 단계에서 생성된 자원에 포함된 라이선스 관련 정보가 올바른지, 예를 들어, IN-CSE#1(1020-1)에 저장된 원본과 동일한지 확인하기 위해, 라이선스 관련 정보를 요청할 수 있다. 이를 위해, IN-CSE#2(1020-2)는 생성된 자원, 생성된 자원에 포함된 라이선스에 대한 정보 중 적어도 하나를 포함하는 요청 메시지를 송신할 수 있다. 이때, 일 실시 예에 따라, IN-CSE#2(1020-2)는 생성된 자원에 연계되는 라이선스를 관리하기 위한 자원에 포함된 원본 라이선스의 소스에 대한 정보(예: linkOriginalLicense)에 기반하여 IN-CSE#1(1020-1)이 원본 라이선스를 가짐을 확인한 후, IN-CSE#1(1020-1)에게 요청 메시지를 송신할 수 있다.
S1017 단계에서, IN-CSE#1(1020-1)은 적절한 라이선스의 사용인지 검사한다. 즉, IN-CSE#1(1020-1)은 IN-CSE#2(1020-2)가 해당 데이터를 포함하는 자원을 생성한 동작이 해당 라이선스에 위반되는지 여부를 검사할 수 있다. 이를 위해, IN-CSE#1(1020-1)은 S1001 단계의 요청에 응하여 확인된 자원에 포함된 정보(예: 가용 동작에 대한 정보, 데이터의 사용의 제한에 대한 정보 등)에 기반하여 IN-CSE#2(1020-2)의 동작이 적절한 라이선스의 사용에 포함되는지 판단할 수 있다.
S1019 단계에서, IN-CSE#1(1020-1)은 IN-CSE#2(1020-2)에게 응답 메시지를 송신한다. 응답 메시지는 S1015 단계의 요청에 응하여 송신된다. 예를 들어, 응답 메시지는 IN-CSE#2(1020-2)의 동작이 적절한 라이선스의 사용에 포함되는지 여부를 알리는 정보를 포함할 수 있다. 즉, IN-CSE#1(1020-1)은 S1015 단계의 요청에 대한 답변을 포함하는 응답을 송신한다.
도 11은 본 개시에 따른 M2M 시스템에서 라이선스 관련 자원에 기반하여 자원을 전달(transfer)하는 절차의 예를 도시한다. 도 11은 AE(1110), IN-CSE#1(1120-1), IN-CSE#2(1120-2) 간 신호 교환을 예시한다. 도 11에서, AE(1110)는 자원의 생성을 위한 발생자(originator)이고, IN-CSE#1(1120-1)는 원본 자원을 호스팅하며, IN-CSE#2(1120-2)는 데이터를 소비하는 AE(예: 웹 인터페이스)에 관련된다.
도 11을 참고하면, S1101 단계에서, AE(1110)는 IN-CSE#1(1120-1)에게 특정 라이선스에 따르는 자원을 타겟 IN-CSE(예: IN-CSE#2(1120-2))에게 송신할 것을 요청한다. 즉, AE(1110)는 IN-CSE#1(1120-1)에 저장된 특정 라이선스에 따르는 적어도 하나의 자원을 IN-CSE#2(1120-2)에게 전달할 것을 요청한다. 다시 말해, AE(1110)는 IN-CSE#1(1120-1)에 저장된 자원을 IN-CSE#2(1120-2)에 복제할 것을 요청한다. 이를 위해, AE(1110)는 특정 라이선스를 지시하는 정보를 포함하는 요청 메시지를 송신할 수 있다.
S1103 단계에서, IN-CSE#1(1120-1)은 접속 제어 정책(access control policy) 및 라이선스를 확인한다. 즉, IN-CSE#1(1120-1)은 특정 라이선스에 따르는 적어도 하나의 자원을 확인하고, 확인된 적어도 하나의 자원의 접속 제어 정책 및 라이선스를 확인한다. 다시 말해, IN-CSE#1(1120-1)은 확인된 적어도 하나의 자원을 다른 플랫폼에 전달하는 것이 해당 접속 제어 정책 및 라이선스에 따라 위반되는지, 허용된다면 조건은 무엇인지 확인할 수 있다. 이때, 일 실시 예에 따라, IN-CSE#1(1120-1)은 요청된 자원에 연계되는(associated) 라이선스를 관리하기 위한 자원에 포함된 정보에 기반하여, AE(1110)에 의해 요청된 복제 동작이 허용되는지 여부를 판단할 수 있다. 예를 들어, 라이선스를 관리하기 위한 자원에 사용 검사에 대한 어트리뷰트(예: usageCheck)가 긍정의 값(예: 1)으로 설정되어 있는 경우, IN-CSE#1(1120-1)는 허용되는 동작에 대한 정보(예: availableOperation)에 기반하여 검색 동작이 허용되는지 여부를 판단할 수 있다.
S1105 단계에서, IN-CSE#1(1120-1)은 IN-CSE#2(1120-2)에게 주어진 라이선스에 따르는 자원들을 생성할 것을 요청한다. 여기서, 주어진 라이선스는 AE(1110)에 의해 지시된 라이선스 등급을 의미한다. 이를 위해, IN-CSE#1(1120-1)은 주어진 라이선스를 지시하는 정보를 포함하는 요청 메시지를 송신할 수 있다.
S1107 단계에서, IN-CSE#2(1120-2)는 자원들을 생성하고, 적절한 라이선스 정보를 추가한다. 즉, IN-CSE#2(1120-2)는 IN-CSE#1(1120-1)의 요청에 따라 적어도 하나의 자원을 생성하고, 생성된 적어도 하나의 자원에 라이선스 관련 정보를 저장한다. 여기서, 라이선스 관련 정보는 해당 자원이 S1105 단계에서 지시된 라이선스 등급에 따름을 지시할 수 있다.
S1109 단계에서, IN-CSE#2(1120-2)는 IN-CSE#1(1120-1)에게 응답 메시지를 송신한다. 여기서, 응답 메시지는 S1105 단계의 요청에 응하여 송신된다. 응답 메시지는 요청된 자원들의 생성에 관련된 정보, 생성된 자원에 대한 정보 중 적어도 하나를 포함할 수 있다. 이에 따라, IN-CSE#1(1120-1)는 요청된 자원들이 IN-CSE#2(1120-2)에 생성됨을 확인할 수 있다.
S1111 단계에서, IN-CSE#1(1120-1)은 IN-CSE#2(1120-2)에게 생성된 자원에 대한 라이선스의 검색을 요청한다. 즉, IN-CSE#1(1120-1)은 라이선스가 적절히 지정되었는지 확인하기 위해, S1107 단계에서 생성된 적어도 하나의 자원에 저장된 라이선스 관련 정보의 검색을 요청하는 요청 메시지를 송신할 수 있다. 다시 말해, IN-CSE#1(1120-1)은 IN-CSE#2(1120-2)에게 생성된 자원에 포함된 라이선스 관련 정보가 IN-CSE#1(1120-1)에 저장된 원본 자원의 라이선스 관련 정보와 동일한지 확인하기 위해, CSE#2(1120-2)에 의해 저장된 라이선스 관련 정보를 요청할 수 있다. 이를 위해, IN-CSE#1(1120-1)은 생성된 적어도 하나의 자원을 지시하는 정보를 포함하는 요청 메시지를 송신할 수 있다. 이때, 일 실시 예에 따라, 라이선스를 관리하기 위한 자원에 사용 검사에 대한 어트리뷰트(예: usageCheck)가 긍정의 값으로 설정되어 있는 경우, IN-CSE#1(1120-1)는 IN-CSE#2(1120-2)에 저장된 라이선스 관련 정보를 확인하기 위해 요청 메시지를 송신할 수 있다.
S1113 단계에서, IN-CSE#2(1120-2)는 IN-CSE#1(1120-1)에게 응답 메시지를 송신한다. 여기서, 응답 메시지는 S1111 단계의 요청에 응하여 송신된다. 응답 메시지는 요청된 적어도 하나의 자원에 포함된 라이선스 관련 정보를 포함할 수 있다. 이에 따라, IN-CSE#1(1120-1)는 해당 적어도 하나의 자원의 라이선스 정보를 확인할 수 있다.
S1115 단계에서, IN-CSE#1(1120-1)은 AE(1110)에게 응답 메시지를 송신한다. 여기서, 응답 메시지는 S1101 단계의 요청에 응하여 송신된다. 응답 메시지는 요청된 자원의 전달이 완료되었음을 알리는 정보를 포함할 수 있다. 또한, 응답 메시지는 요청된 자원의 라이선스가 타겟 플랫폼에서 적절하게 설정되었음을 알리는 정보를 포함할 수 있다. 이에 따라, AE(1110)는 해당 적어도 하나의 자원이 올바른 라이선스와 함께 성공적으로 전달되었음을 확인할 수 있다.
도 11을 참고하여 설명한 실시 예와 같이, 라이선스-기반 자원 전달 및 검사 절차가 수행될 수 있다. 구체적으로, 라이선스를 이용하는 사용 예로서, 소스 IN-CSE가 발견된 자원의 세트를 타겟 IN-CSE에게 전달하고, 라이선스를 검사할 수 있다. 개방 데이터의 세트가 다른자들과 공유되고, 데이터세트의 사용을 원하는 IoT 어플리케이션이 존재하면, IoT 어플리케이션은 데이터세트를 다운로드하거나 또는 검색하고, 다운로드된 데이터세트를 자신의 IoT 플랫폼에 저장한다. 이후, 특정 라이선스에 따라 데이터 전달이 지원될 필요가 있다. 추가적으로, 소스 IN-CSE는 라이선스 기법에 설명된 안내(guidance)에 기반하여 타겟 IN-CSE가 전달된 데이터세트를 적절하게 저장하였는지 검사할 필요가 있다.
도 12는 본 개시에 따른 M2M 시스템에서 M2M 장치의 구성을 도시한다. 도 12에 도시된 M2M 장치(1210) 또는 M2M 장치(1220)는 전술한 AE, CSE, NSE 중 적어도 하나의 기능을 수행하는 하드웨어로 이해될 수 있다.
도 12를 참고하면, M2M 장치(1210)는 장치를 제어하는 프로세서(1212) 및 신호를 송수신하는 송수신부(1214)를 포함할 수 있다. 이때, 프로세서(1212)는 송수신부(1214)를 제어할 수 있다. 또한, M2M 장치(1210)는 다른 M2M 장치(1220)와 통신을 수행할 수 있다. 다른 M2M 장치(1220)도 프로세서(1222) 및 송수신부(1224)를 포함할 수 있으며, 프로세서(1222) 및 송수신부(1224)는 프로세서(1212) 및 송수신부(1214)와 동일한 기능을 수행할 수 있다.
일 예로, 상술한 송신자, 수신자, AE, CSE는 각각 도 12의 M2M 장치들(1210 및 1220) 중 하나일 수 있다. 또한, 도 12의 장치들(1210 및 1220)은 다른 장치일 수 있다. 일 예로, 도 12의 장치들(1210 및 1220)은 통신을 수행하는 장치, 자동차 또는 기지국 등과 같은 장치일 수 있다. 즉, 도 12의 장치들(1210 및 1220)은 통신을 수행할 수 있는 장치를 지칭하는 것으로 상술한 실시 예로 한정되지 않는다.
상술한 본 개시의 실시 예들은 다양한 수단을 통해 구현될 수 있다. 일 예로, 본 개시의 실시 예들은 하드웨어, 펌웨어(firmware), 소프트웨어 또는 그것들의 결합 등에 의해 구현될 수 있다.
상술한 바와 같이 개시된 본 개시의 바람직한 실시형태에 대한 상세한 설명은 당업자가 본 개시를 구현하고 실시할 수 있도록 제공되었다. 상기에서는 본 개시의 바람직한 실시 형태를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 개시의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 개시를 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다. 따라서, 본 개시는 여기에 나타난 실시형태들에 제한되려는 것이 아니라, 여기서 개시된 원리들 및 신규한 특징들과 일치하는 최광의 범위를 부여하려는 것이다. 또한, 이상에서는 본 명세서의 바람직한 실시 예에 대하여 도시하고 설명하였지만, 본 명세서는 상술한 특정의 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 본 명세서의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형 실시들은 본 명세서의 기술적 사상이나 전망으로부터 개별적으로 이해되어서는 안될 것이다.
그리고 당해 명세서에서는 물건 발명과 방법 발명이 모두 설명되고 있으며, 필요에 따라 양 발명의 설명은 보충적으로 적용될 수 있다.
또한, 본 개시에 대하여 그 바람직한 실시 예들을 중심으로 살펴보았다. 본 개시이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 개시이 본 개시의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시 예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 개시의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 개시에 포함된 것으로 해석되어야 할 것이다.

Claims (15)

  1. M2M(Machine-to-Machine) 시스템에서 제1 장치의 동작 방법에 있어서,
    데이터를 포함하는 제1 자원 및 상기 데이터의 라이선스를 관리하기 위한 정보를 포함하는 제2 자원을 생성하는 단계;
    상기 데이터에 대한 동작(operation)을 요청하는 메시지를 제2 장치로부터 수신하는 단계;
    상기 제2 자원에 포함된 정보에 기반하여 상기 동작이 허용되는지 여부를 판단하는 단계; 및
    상기 동작을 수행하기 위한 제2 메시지를 상기 제2 장치 또는 제3 장치에게 송신하는 단계를 포함하는 방법.
  2. 청구항 1에 있어서,
    상기 제2 자원은, 라이선스의 내용에 대한 정보, 라이선스에 의해 허용되는 동작에 대한 정보, 라이선스의 유효성에 대한 정보, 해당 데이터의 사용 이력에 대한 정보, 라이선스의 검사에 대한 정보 중 적어도 하나를 포함하는 방법.
  3. 청구항 1에 있어서,
    상기 제2 자원이 긍정의 값으로 설정된 상기 라이선스의 검사에 대한 정보를 포함하면, 상기 동작에 의해 상기 라이선스에 대한 정보를 이용한 제3 장치에 저장된 라이선스에 대한 정보가 원본 라이선스와 동일한지 검사하는 단계를 더 포함하는 방법.
  4. 청구항 1에 있어서,
    상기 제2 메시지를 송신하는 단계는,
    상기 제1 자원에 대한 정보를 포함하는 상기 제2 메시지를 상기 제2 장치에게 송신하는 단계를 포함하는 방법.
  5. 청구항 1에 있어서,
    상기 제2 메시지를 송신하는 단계는,
    상기 제1 자원에 대한 정보 및 상기 제2 자원에 포함되는 상기 라이선스에 관련된 정보를 포함하는 상기 제2 메시지를 제3 장치에게 송신하는 단계를 포함하는 방법.
  6. 청구항 1에 있어서,
    상기 제3 장치에 대한 정보를 상기 제2 자원에 추가할 것을 요청하는 제3 메시지를 수신하는 단계; 및
    상기 제3 장치에 대한 정보를 상기 제2 자원에 포함되는 상기 데이터를 사용한 플랫폼 또는 사용자에 대한 정보로서 추가하는 단계를 더 포함하는 방법.
  7. M2M(Machine-to-Machine) 시스템에서 제3 장치의 동작 방법에 있어서,
    제1 장치 또는 제2 장치로부터 라이선스를 가지는 데이터를 위한 제1 자원의 생성을 요청하는 제1 메시지를 수신하는 단계;
    상기 데이터를 포함하는 제1 자원 및 상기 라이선스를 관리하기 위한 정보를 포함하는 제2 자원을 생성하는 단계; 및
    상기 제1 자원 및 상기 제2 자원의 생성을 통지하는 제2 메시지를 상기 제1 장치 또는 상기 제2 장치에게 송신하는 단계를 포함하는 방법.
  8. 청구항 7에 있어서,
    상기 제2 자원은, 라이선스의 내용에 대한 정보, 라이선스에 의해 허용되는 동작에 대한 정보, 라이선스의 유효성에 대한 정보, 해당 데이터의 사용 이력에 대한 정보, 라이선스의 검사에 대한 정보 중 적어도 하나를 포함하는 방법.
  9. 청구항 7에 있어서,
    상기 제2 자원이 긍정의 값으로 설정된 상기 라이선스의 검사에 대한 정보를 포함하면, 상기 제3 장치에 저장된 라이선스에 대한 정보가 원본 라이선스와 동일한지 검사하기 위한 제3 메시지를 상기 제1 장치에게 송신하는 단계를 더 포함하는 방법.
  10. 청구항 7에 있어서,
    상기 제2 자원이 긍정의 값으로 설정된 상기 라이선스의 검사에 대한 정보를 포함하면, 상기 제3 장치에 저장된 라이선스에 대한 정보를 요청하는 제3 메시지를 상기 제1 장치로부터 수신하는 단계를 더 포함하는 방법.
  11. M2M(Machine-to-Machine) 시스템에서 제1 장치에 있어서,
    송수신기; 및
    상기 송수신기와 연결된 프로세서를 포함하며,
    상기 프로세서는,
    데이터를 포함하는 제1 자원 및 상기 데이터의 라이선스를 관리하기 위한 정보를 포함하는 제2 자원을 생성하고,
    상기 데이터에 대한 동작(operation)을 요청하는 메시지를 제2 장치로부터 수신하고,
    상기 제2 자원에 포함된 정보에 기반하여 상기 동작이 허용되는지 여부를 판단하고,
    상기 동작을 수행하기 위한 제2 메시지를 상기 제2 장치 또는 제3 장치에게 송신하도록 제어하는 제1 장치.
  12. 청구항 11에 있어서,
    상기 프로세서는, 상기 제2 자원이 긍정의 값으로 설정된 상기 라이선스의 검사에 대한 정보를 포함하면, 상기 동작에 의해 상기 라이선스에 대한 정보를 이용한 제3 장치에 저장된 라이선스에 대한 정보가 원본 라이선스와 동일한지 검사하는 제1 장치.
  13. 청구항 11에 있어서,
    상기 프로세서는, 상기 제1 자원에 대한 정보를 포함하는 상기 제2 메시지를 상기 제2 장치에게 송신하도록 제어하는 제1 장치.
  14. 청구항 11에 있어서,
    상기 프로세서는, 상기 제1 자원에 대한 정보 및 상기 제2 자원에 포함되는 상기 라이선스에 관련된 정보를 포함하는 상기 제2 메시지를 제3 장치에게 송신하도록 제어하는 제1 장치.
  15. 청구항 11에 있어서,
    상기 프로세서는,
    상기 제3 장치에 대한 정보를 상기 제2 자원에 추가할 것을 요청하는 제3 메시지를 수신하고,
    상기 제3 장치에 대한 정보를 상기 제2 자원에 포함되는 상기 데이터를 사용한 플랫폼 또는 사용자에 대한 정보로서 추가하도록 제어하는 제1 장치.
KR1020220029053A 2021-05-17 2022-03-08 M2m 시스템에서 데이터 라이선스를 관리하기 위한 방법 및 장치 KR20220155897A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US202163189279P 2021-05-17 2021-05-17
US63/189,279 2021-05-17

Publications (1)

Publication Number Publication Date
KR20220155897A true KR20220155897A (ko) 2022-11-24

Family

ID=84140757

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220029053A KR20220155897A (ko) 2021-05-17 2022-03-08 M2m 시스템에서 데이터 라이선스를 관리하기 위한 방법 및 장치

Country Status (3)

Country Link
EP (1) EP4329269A1 (ko)
KR (1) KR20220155897A (ko)
WO (1) WO2022244987A1 (ko)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100070763A (ko) * 2008-12-18 2010-06-28 한국전자통신연구원 유비쿼터스 센서 네트워크 미들웨어에서의 접근제어 방법 및 그 장치
KR101274966B1 (ko) * 2011-12-07 2013-07-30 모다정보통신 주식회사 M2m 통신에서 장치의 데이터 공유 방법 및 그 시스템
KR101230917B1 (ko) * 2011-12-13 2013-02-07 (주)정원기술 확장기능 추가가 용이한 m2m 장치
KR20160091314A (ko) * 2013-11-29 2016-08-02 엘지전자 주식회사 무선 통신 시스템에서 서비스 구독 리소스 기반 인증 방법
KR20170053130A (ko) * 2015-11-05 2017-05-15 주식회사 케이티 보안 개체에서 접근을 제어하는 방법 및 그 장치

Also Published As

Publication number Publication date
US20240134944A1 (en) 2024-04-25
WO2022244987A1 (ko) 2022-11-24
EP4329269A1 (en) 2024-02-28

Similar Documents

Publication Publication Date Title
EP3861706B1 (en) Framework for dynamic brokerage and management of topics and data at the service layer
KR102561083B1 (ko) 프로파일 기반 콘텐츠 및 서비스들
KR20220156429A (ko) M2m 시스템에서 디지털 권한 관리를 지원하기 위한 방법 및 장치
KR20200135176A (ko) 단말의 이동에 따른 엣지 트랜스퍼를 제공하는 방법 및 장치
US20230076892A1 (en) Method and apparatus for managing licenses for data in m2m system
EP4030686A1 (en) Method and apparatus for replacing security key in machine to machine system
KR20220155897A (ko) M2m 시스템에서 데이터 라이선스를 관리하기 위한 방법 및 장치
US11395120B2 (en) Method and apparatus for identifying service entity in machine to machine system
US20240232298A9 (en) Method and device for managing data license in m2m system
KR20200131167A (ko) M2m 시스템에서 자원을 삭제하기 위한 방법 및 장치
KR20230080296A (ko) M2m 시스템에서 데이터를 보호하기 위한 방법 및 장치
US11659619B2 (en) Method and apparatus for performing confirmed-based operation in machine to machine system
KR20230080295A (ko) M2m 시스템에서 데이터 트랜드를 은닉하기 위한 방법 및 장치
EP4099660A1 (en) Method and device for synchronization for resource offloading in m2m system
KR20230120086A (ko) M2m 시스템에서 소실 센서의 측정값 생성 방법 및 장치
EP4135285A1 (en) Method and device for managing log information in m2m system
KR20220152923A (ko) M2m 시스템에서 인공지능 서비스를 가능하게 하기 위한 방법 및 장치
US11470034B2 (en) Method and apparatus for receiving and transmitting periodic notification in machine to machine system
US20210084521A1 (en) Method and apparatus for handling incompatible request message in machine-to-machine system
KR20230049016A (ko) M2m 시스템에서 데이터를 레이블링하기 위한 방법 및 장치
KR20230072403A (ko) M2m 시스템에서 자동화된 재학습을 지원하기 위한 방법 및 장치
KR20220071882A (ko) M2m 시스템에서 장치의 부품 정보를 관리하기 위한 방법 및 장치
KR20230120085A (ko) M2m 시스템에서 머신 러닝을 이용하여 장치를 캘리브레이션하는 방법 및 장치
KR20220009326A (ko) M2m 시스템에서 데이터 익명화 및 가명화를 위한 방법 및 장치
KR20230115878A (ko) M2m 시스템에서 장치 그룹을 캘리브레이션하는 방법 및 장치