KR20230016034A - 기기간 통신 네트워크에서의 자동화된 서비스 등록 - Google Patents
기기간 통신 네트워크에서의 자동화된 서비스 등록 Download PDFInfo
- Publication number
- KR20230016034A KR20230016034A KR1020237002417A KR20237002417A KR20230016034A KR 20230016034 A KR20230016034 A KR 20230016034A KR 1020237002417 A KR1020237002417 A KR 1020237002417A KR 20237002417 A KR20237002417 A KR 20237002417A KR 20230016034 A KR20230016034 A KR 20230016034A
- Authority
- KR
- South Korea
- Prior art keywords
- service
- iot
- data
- registration
- devices
- Prior art date
Links
- 238000004891 communication Methods 0.000 title claims description 43
- 238000000034 method Methods 0.000 claims abstract description 97
- 230000006870 function Effects 0.000 claims description 74
- 230000015654 memory Effects 0.000 claims description 32
- 238000013500 data storage Methods 0.000 claims description 14
- 230000009471 action Effects 0.000 claims description 5
- 230000008569 process Effects 0.000 abstract description 53
- 239000010410 layer Substances 0.000 description 76
- 239000008186 active pharmaceutical agent Substances 0.000 description 19
- 238000007726 management method Methods 0.000 description 18
- 230000004044 response Effects 0.000 description 18
- 238000010586 diagram Methods 0.000 description 16
- 238000004325 capillary sieving electrophoresis Methods 0.000 description 10
- 230000001413 cellular effect Effects 0.000 description 9
- 230000002093 peripheral effect Effects 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 6
- 230000007246 mechanism Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 238000013523 data management Methods 0.000 description 5
- 238000013475 authorization Methods 0.000 description 4
- 230000001960 triggered effect Effects 0.000 description 4
- 238000013499 data model Methods 0.000 description 3
- 239000000284 extract Substances 0.000 description 3
- 101000962461 Homo sapiens Transcription factor Maf Proteins 0.000 description 2
- 101000613608 Rattus norvegicus Monocyte to macrophage differentiation factor Proteins 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000013480 data collection Methods 0.000 description 2
- 230000036541 health Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 229910001416 lithium ion Inorganic materials 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- QELJHCBNGDEXLD-UHFFFAOYSA-N nickel zinc Chemical compound [Ni].[Zn] QELJHCBNGDEXLD-UHFFFAOYSA-N 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- HBBGRARXTFLTSG-UHFFFAOYSA-N Lithium ion Chemical compound [Li+] HBBGRARXTFLTSG-UHFFFAOYSA-N 0.000 description 1
- 241000700159 Rattus Species 0.000 description 1
- 238000002120 advanced silicon etching Methods 0.000 description 1
- OJIJEKBXJYRIBZ-UHFFFAOYSA-N cadmium nickel Chemical compound [Ni].[Cd] OJIJEKBXJYRIBZ-UHFFFAOYSA-N 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 239000000446 fuel Substances 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 239000002346 layers by function Substances 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 229910052987 metal hydride Inorganic materials 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 229910052759 nickel Inorganic materials 0.000 description 1
- PXHVJJICTQNCMI-UHFFFAOYSA-N nickel Substances [Ni] PXHVJJICTQNCMI-UHFFFAOYSA-N 0.000 description 1
- -1 nickel metal hydride Chemical class 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 229920001690 polydopamine Polymers 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 230000026676 system process Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 238000012384 transportation and delivery Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1073—Registration or de-registration
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/30—Profiles
- H04L67/303—Terminal profiles
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16Y—INFORMATION AND COMMUNICATION TECHNOLOGY SPECIALLY ADAPTED FOR THE INTERNET OF THINGS [IoT]
- G16Y10/00—Economic sectors
- G16Y10/75—Information technology; Communication
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16Y—INFORMATION AND COMMUNICATION TECHNOLOGY SPECIALLY ADAPTED FOR THE INTERNET OF THINGS [IoT]
- G16Y20/00—Information sensed or collected by the things
- G16Y20/40—Information sensed or collected by the things relating to personal data, e.g. biometric data, records or preferences
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1069—Session establishment or de-establishment
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/30—Profiles
- H04L67/306—User profiles
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/70—Services for machine-to-machine communication [M2M] or machine type communication [MTC]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Computing Systems (AREA)
- Multimedia (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Accounting & Taxation (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Mobile Radio Communication Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Telephonic Communication Services (AREA)
Abstract
IoT 서비스 계층 능력들은 IoT 서비스 가입자들/등록자들에 대한 서비스 등록 프로세스를 자동화하고 단순화하는데 이용될 수 있다. 이러한 능력들은 서비스 가입자 및 물리적 IoT 디바이스들, 애플리케이션들, 데이터 및 가입자의 허가된 사용자들을 가입자를 나타내는 소프트웨어 프로파일로 가상화하는 것을 가능하게 한다. 가상화되면, 서비스 가입자는 그 후 서비스 등록의 복잡성들 및 부담을 자동화된 IoT 서비스 등록 소프트웨어 기능에 위임할 수 있다.
Description
관련 출원들에 대한 상호 참조
본 출원은 2017년 9월 8일자로 출원된 미국 가특허 출원 제62/556,161호의 이익을 주장하며, 이 출원은 그 전체가 참조로 본 명세서에 포함된다.
예를 들어, oneM2M, ETSI(European Telecommunications Standards Institute), 및 OCF(Open Connectivity Foundation)와 같은 다수의 표준 기관들은 애플리케이션들, 심지어 상이한 산업 부문들로부터의 애플리케이션들 간의 데이터의 교환 및 공유를 위한 단일 수평 플랫폼을 정의하는 기기간(machine-to-machine)(M2M)/사물 인터넷(Internet-of-Things)(IoT) 서비스 계층들을 개발하고 있다.
M2M/IoT 서비스 계층은 애플리케이션들 및 디바이스들에게 서비스 계층에 의해 지원되는 M2M/IoT 지향 능력들(M2M/IoT 서비스들)의 컬렉션에 대한 액세스를 제공할 수 있다. 이러한 능력들은 API(Application Programming Interface)들을 통해 애플리케이션들에 이용가능하게 될 수 있다. 예를 들어, M2M/IoT 서비스 계층은 (애플리케이션들이 적절한 액세스 권한들을 갖는다면) 이들 애플리케이션들에 의해 발견, 검색, 및/또는 가입될 수 있는 대용량들의 M2M/IoT 데이터를 유지할 수 있다. 서비스 계층에 의해 제공될 수 있는 M2M/IoT 서비스들의 추가적인 예들은 보안, 과금, 디바이스 관리, 프로비저닝, 및 접속성 관리를 포함한다.
oneM2M 표준은 "공통 서비스 엔티티(CSE)"의 형태로 그 서비스 계층을 구현한다. oneM2M 서비스 계층의 목적은 상이한 "수직(vertical)" M2M 시스템들 및 애플리케이션들에 의해 이용될 수 있는 "수평" 서비스들을 제공하는 것이다. oneM2M CSE는 4개의 참조 포인트를 지원한다. Mca 참조 포인트는 애플리케이션 엔티티(AE)와 인터페이싱한다. Mcc 참조 포인트는 동일한 서비스 제공자 도메인 내에서 다른 CSE와 인터페이싱하고, Mcc' 참조 포인트는 상이한 서비스 제공자 도메인에서 다른 CSE와 인터페이싱한다. Mcn 참조 포인트는 기본 네트워크 서비스 엔티티(NSE)와 인터페이싱한다. NSE는 디바이스 관리, 위치 서비스들 및 디바이스 트리거링과 같은 기본 네트워크 서비스들을 CSE들에 제공한다. CSE는, "발견" 및 "데이터 관리 및 저장소"와 같은, "공통 서비스 기능들(CSF들)"이라고 불리는 복수의 논리 기능들을 포함할 수 있다.
IoT 서비스 등록자들에 대한 서비스 등록 프로세스를 자동화하고 단순화하는 것을 도울 수 있는 IoT 서비스 능력들을 가능하게 하고, 더 확장가능한 IoT 생태계가 소비자들이 다양한 유형들의 디바이스들을 구매하여 자신들의 네트워크들에 추가하는 자유 및 다양한 서비스 제공자들로부터 제공되는 서비스들을 발견하고 이용하는 유연성을 가질 수 있게 하는 시스템들 및 방법들이 본 명세서에서 설명된다. 이러한 능력들은 인간 서비스 등록자가 그 자신 및 자신의 물리적 IoT 디바이스들, 애플리케이션들, 데이터 및 허가된 사용자들(예를 들어, 가족 구성원들)을 등록자를 나타내는 소프트웨어 프로파일로 가상화하는 것을 가능하게 할 수 있다. 가상화되면, 서비스 등록자는 이후 그 대신에 서비스 등록의 복잡성들 및 부담을 자동화된 IoT 서비스 등록 소프트웨어 기능에 위임할 수 있다. 마찬가지로, 이러한 IoT 서비스 능력들은 또한 IoT 서비스 제공자들에 대한 서비스 등록 프로세스를 자동화하는 것을 도울 수 있고 서비스 제공자가 그 자신 및 그 등록 프로세스를 자동화된 소프트웨어 가능 프로세스로 가상화할 수 있게 한다. 새롭게 도입된 IoT 서비스 등록 능력들의 세트를 포함하는 IoT 시스템을 위한 아키텍처가 또한 도입된다.
잠재적 서비스 등록자들이 그 자신들 및 자신들의 IoT 디바이스들, 애플리케이션들, 데이터 및 사용자들을 IoT 서비스 제공자의 플랫폼에 이후 등록될 수 있는 소프트웨어 엔티티들로 가상화할 수 있게 하는 IoT 서비스 능력 및 방법; IoT 서비스 제공자들이 그 분산된 IoT 서비스 플랫폼을 통해 발견가능한 IoT 서비스 등록 정보를 공개할 수 있게 하는 IoT 서비스 능력 및 방법 - 이는 또한 잠재적 서비스 등록자들이 그 IoT 서비스 플랫폼을 통해 서비스 제공자에 의해 공개되는 이용가능한 서비스 등록 옵션들을 질의하고 발견할 수 있게 함 -; 서비스 등록자가 서비스 제공자의 플랫폼과 보안 연관을 확립하고 이 보안 연관을 통해 서비스 제공자에 안전하게 등록/재등록/등록 취소할 수 있게 하는 IoT 서비스 능력 및 방법; 및 가상화된 IoT 서비스 등록자가 그 자신뿐만 아니라 자신의 IoT 디바이스들, 앱들, 데이터 및 허가된 사용자들을 IoT 서비스 제공자의 플랫폼에 안전하게 동적으로 등록할 수 있게 하는 IoT 서비스 능력 및 방법 - 이는 IoT 서비스 플랫폼이 등록자에게 등록자에 대한 허가 정책들의 자동 생성, 등록자의 IoT 디바이스들 및 애플리케이션들의 자동 등록 및 등록자 데이터의 자동 가져오기와 같은 자동화된 등록 서비스 세트를 제공할 수 있게 함 - 과 같은 새로운 능력들이 본 명세서에 도입된다.
이 요약은 상세한 설명에서 이하 추가로 설명되는 개념들의 선택을 간략화된 형태로 소개하기 위해 제공된다. 이 요약은 청구되는 주제의 핵심 특징들 또는 필수 특징들을 식별하고자 의도되는 것도 아니고, 청구되는 주제의 범위를 제한하는데 이용하고자 의도되는 것도 아니다. 또한, 청구되는 주제는 본 개시내용의 임의의 부분에서 언급되는 임의의 또는 모든 단점들을 해결하는 제한사항들에 제한되는 것도 아니다.
첨부 도면들과 관련하여 예로서 주어지는 이하의 설명으로부터 보다 상세한 이해를 가질 수 있을 것이다.
도 1은 IoT 서비스 등록자 관계들의 계층구조를 도시한다.
도 2는 애플리케이션 프로토콜들과 애플리케이션들 사이에 서비스 계층을 갖는 예시적인 프로토콜 스택을 도시한다.
도 3은 예시적인 M2M/IoT 배치를 도시한다.
도 4는 예시적인 oneM2M 서비스 계층 아키텍처를 도시한다.
도 5는 oneM2M에 의해 현재 정의되는 CSF들을 도시한다.
도 6은 oneM2M에 의해 지원되는 예시적인 구성들을 도시한다.
도 7은 IoT 서비스 등록을 자동화하기 위한 예시적인 프로세스를 도시하는 흐름도이다.
도 8은 자동화된 IoT 서비스 등록 아키텍처의 예시적인 배치를 도시한다.
도 9는 자동화된 IoT 서비스 등록 아키텍처의 다른 예시적인 배치를 도시한다.
도 10은 예시적인 자동화된 IoT 서비스 등록 클라이언트를 도시한다.
도 11은 예시적인 자동화된 IoT 서비스 등록 서버를 도시한다.
도 12는 oneM2M 서비스 가입자 등록 아키텍처의 예시적인 실시예를 도시한다.
도 13은 예시적인 oneM2M 리소스 속성을 도시한다.
도 14는 새로운 oneM2M 리소스의 예시적인 실시예를 도시한다.
도 15는 oneM2M 서비스 등록 옵션들을 공개하기 위한 예시적인 시퀀스도를 도시한다.
도 16은 oneM2M 서비스 등록 옵션들을 발견하기 위한 예시적인 시퀀스도를 도시한다.
도 17은 서비스 가입자 자격증명들을 관리하기 위한 예시적인 서비스 제공자 API를 도시한다.
도 18은 서비스 가입자 자격증명들을 생성하기 위한 예시적인 시퀀스도를 도시한다.
도 19는 oneM2M 서비스 가입자 자격증명 부트스트랩 API의 예시적인 실시예를 도시한다.
도 20은 자격증명들을 부트스트래핑하기 위한 예시적인 시퀀스도를 도시한다.
도 21은 oneM2M 서비스 가입자 등록 정보 리소스의 예시적인 실시예를 도시한다.
도 22는 서비스 가입자가 서비스 제공자에게 등록하기 위한 예시적인 시퀀스도를 도시한다.
도 23은 새로운 oneM2M 리소스의 예시적인 실시예를 도시한다.
도 24는 다른 새로운 oneM2M 리소스의 예시적인 실시예를 도시한다.
도 25는 다른 새로운 oneM2M 리소스의 예시적인 실시예를 도시한다.
도 26은 다른 새로운 oneM2M 리소스의 예시적인 실시예를 도시한다.
도 27은 다른 새로운 oneM2M 리소스의 예시적인 실시예를 도시한다.
도 28은 다른 새로운 oneM2M 리소스의 예시적인 실시예를 도시한다.
도 29는 다른 새로운 oneM2M 리소스의 예시적인 실시예를 도시한다.
도 30은 가상화된 서비스 가입자의 적어도 하나의 디바이스를 서비스 계층 엔티티에 기재하고 등록하기 위한 예시적인 프로세스를 도시하는 흐름도이다.
도 31은 예시적인 그래픽 사용자 인터페이스이다.
도 32a는 하나 이상의 개시되는 실시예가 구현될 수 있는 예시적인 기기간(M2M), 사물 인터넷(IoT) 또는 사물 웹(WoT) 통신 시스템의 시스템도이다.
도 32b는 도 32a에 도시된 M2M/IoT/WoT 통신 시스템 내에서 이용될 수 있는 예시적인 아키텍처의 시스템도이다.
도 32c는 도 32a 및 도 32b에 도시된 통신 시스템 내에서 이용될 수 있는 M2M/IoT/WoT 디바이스, 게이트웨이, 또는 서버와 같은 예시적인 통신 네트워크 장치의 시스템도이다.
도 32d는 도 32a 및 도 32b의 통신 시스템의 노드 또는 장치가 구현될 수 있는 예시적인 컴퓨팅 시스템의 블록도이다.
도 1은 IoT 서비스 등록자 관계들의 계층구조를 도시한다.
도 2는 애플리케이션 프로토콜들과 애플리케이션들 사이에 서비스 계층을 갖는 예시적인 프로토콜 스택을 도시한다.
도 3은 예시적인 M2M/IoT 배치를 도시한다.
도 4는 예시적인 oneM2M 서비스 계층 아키텍처를 도시한다.
도 5는 oneM2M에 의해 현재 정의되는 CSF들을 도시한다.
도 6은 oneM2M에 의해 지원되는 예시적인 구성들을 도시한다.
도 7은 IoT 서비스 등록을 자동화하기 위한 예시적인 프로세스를 도시하는 흐름도이다.
도 8은 자동화된 IoT 서비스 등록 아키텍처의 예시적인 배치를 도시한다.
도 9는 자동화된 IoT 서비스 등록 아키텍처의 다른 예시적인 배치를 도시한다.
도 10은 예시적인 자동화된 IoT 서비스 등록 클라이언트를 도시한다.
도 11은 예시적인 자동화된 IoT 서비스 등록 서버를 도시한다.
도 12는 oneM2M 서비스 가입자 등록 아키텍처의 예시적인 실시예를 도시한다.
도 13은 예시적인 oneM2M 리소스 속성을 도시한다.
도 14는 새로운 oneM2M 리소스의 예시적인 실시예를 도시한다.
도 15는 oneM2M 서비스 등록 옵션들을 공개하기 위한 예시적인 시퀀스도를 도시한다.
도 16은 oneM2M 서비스 등록 옵션들을 발견하기 위한 예시적인 시퀀스도를 도시한다.
도 17은 서비스 가입자 자격증명들을 관리하기 위한 예시적인 서비스 제공자 API를 도시한다.
도 18은 서비스 가입자 자격증명들을 생성하기 위한 예시적인 시퀀스도를 도시한다.
도 19는 oneM2M 서비스 가입자 자격증명 부트스트랩 API의 예시적인 실시예를 도시한다.
도 20은 자격증명들을 부트스트래핑하기 위한 예시적인 시퀀스도를 도시한다.
도 21은 oneM2M 서비스 가입자 등록 정보 리소스의 예시적인 실시예를 도시한다.
도 22는 서비스 가입자가 서비스 제공자에게 등록하기 위한 예시적인 시퀀스도를 도시한다.
도 23은 새로운 oneM2M 리소스의 예시적인 실시예를 도시한다.
도 24는 다른 새로운 oneM2M 리소스의 예시적인 실시예를 도시한다.
도 25는 다른 새로운 oneM2M 리소스의 예시적인 실시예를 도시한다.
도 26은 다른 새로운 oneM2M 리소스의 예시적인 실시예를 도시한다.
도 27은 다른 새로운 oneM2M 리소스의 예시적인 실시예를 도시한다.
도 28은 다른 새로운 oneM2M 리소스의 예시적인 실시예를 도시한다.
도 29는 다른 새로운 oneM2M 리소스의 예시적인 실시예를 도시한다.
도 30은 가상화된 서비스 가입자의 적어도 하나의 디바이스를 서비스 계층 엔티티에 기재하고 등록하기 위한 예시적인 프로세스를 도시하는 흐름도이다.
도 31은 예시적인 그래픽 사용자 인터페이스이다.
도 32a는 하나 이상의 개시되는 실시예가 구현될 수 있는 예시적인 기기간(M2M), 사물 인터넷(IoT) 또는 사물 웹(WoT) 통신 시스템의 시스템도이다.
도 32b는 도 32a에 도시된 M2M/IoT/WoT 통신 시스템 내에서 이용될 수 있는 예시적인 아키텍처의 시스템도이다.
도 32c는 도 32a 및 도 32b에 도시된 통신 시스템 내에서 이용될 수 있는 M2M/IoT/WoT 디바이스, 게이트웨이, 또는 서버와 같은 예시적인 통신 네트워크 장치의 시스템도이다.
도 32d는 도 32a 및 도 32b의 통신 시스템의 노드 또는 장치가 구현될 수 있는 예시적인 컴퓨팅 시스템의 블록도이다.
IoT 서비스 등록은 IoT 서비스 제공자의 플랫폼이 도 1에 도시된 바와 같이 서비스 등록자와 그 IoT 디바이스들, 애플리케이션들, 데이터 및 허가된 사용자들 사이에 존재하는 관계들을 통지받을 수 있게 한다. IoT 서비스 등록자는 그와 연관된 복수의 허가된 사용자를 가질 수 있다. 이러한 사용자들은 IoT 디바이스들에 액세스하도록 허가될 수 있다. 이러한 디바이스들은 IoT 애플리케이션들을 호스팅할 수 있다. IoT 애플리케이션들은 데이터를 소비할 뿐만 아니라 생성할 수 있다. 각각의 등록자는 그와 연관된 하나 이상의 IoT 디바이스, 애플리케이션, 사용자 및/또는 데이터 세트를 가질 수 있다.
IoT 애플리케이션은 IoT 이용 사례들(예를 들어, 감지, 작동)에 관한 애플리케이션 특정 기능을 수행하는 소프트웨어 엔티티일 수 있다.
IoT 서비스는 IoT 애플리케이션들 및 디바이스들(예를 들어, 데이터 관리, 보안, 디바이스 관리 등)에 능력들을 제공하는 소프트웨어 엔티티일 수 있다.
IoT 디바이스는 하나 이상의 IoT 애플리케이션을 호스팅할 수 있는 엔티티일 수 있다.
IoT 엔티티는 IoT 애플리케이션, IoT 서비스 또는 IoT 디바이스일 수 있다.
IoT 서비스 플랫폼은 그 등록자들 및 그 IoT 디바이스들, 애플리케이션들, 데이터 및 사용자들에게 서비스 제공자를 대신하여 IoT 서비스들을 제공하는 시스템일 수 있다.
IoT 서비스 제공자는 IoT 서비스 플랫폼의 배치 및 관리를 담당하는 이해 관계자(예를 들어, 회사)일 수 있다.
IoT 서비스 등록자는 IoT 서비스 제공자의 플랫폼의 서비스들에 액세스하고 이들을 이용하기 위해 IoT 서비스 제공자의 플랫폼에 대해 서비스 등록을 확립하는 이해 관계자(예를 들어, 인간)일 수 있다.
가상화된 IoT 서비스 등록자는 IoT 서비스 등록자 및 그 IoT 디바이스들, 애플리케이션들, 데이터 및 사용자들을 나타내는 소프트웨어 프로파일일 수 있다.
IoT 서비스 등록은 IoT 서비스 제공자의 IoT 플랫폼에 의해 제공되는 서비스들에 대한 액세스를 획득하기 위해 IoT 디바이스들, 애플리케이션들, 데이터 및 허가된 사용자들을 제공자에 등록하는 IoT 서비스 등록자의 행동일 수 있다.
IoT 사용자는 IoT 서비스 등록자와 연관된 허가된 사용자일 수 있다. IoT 서비스 등록자는 IoT 서비스 제공자의 플랫폼을 통해 지정된 IoT 디바이스들, 애플리케이션들, 데이터 및 서비스들에 액세스하기 위해 지정된 권한들을 지정된 사용자들에게 부여할 수 있다.
M2M/IoT 서비스 계층(SL)은 M2M/IoT 디바이스들, IoT 애플리케이션들 및 IoT 데이터에 부가 가치 서비스들을 제공하는 것을 구체적인 목표로 하는 기술이다. 최근에, 몇개의 산업 표준 기관들(예컨대, oneM2M, ETSI, OCF 및 LWM2M)은 M2M/IoT 디바이스들, 애플리케이션들 및 데이터를 인터넷/웹, 셀룰러, 기업, 및 홈 네트워크를 갖는 배치들에 통합시키는 것과 연관된 과제들을 해결하기 위해 M2M/IoT SL들을 개발해오고 있다.
M2M/IoT SL은 M2M/IoT 지향 능력들의 컬렉션에 대한 액세스를 애플리케이션들 및 디바이스들에게 제공할 수 있다. 예시적인 능력들은 보안, 과금, 데이터 관리, 디바이스 관리, 발견, 프로비저닝, 및 접속성 관리를 포함할 수 있다. 이러한 능력들은 M2M/IoT SL에 의해 지원되는 메시지 포맷들, 리소스 구조들, 및 리소스 표현들을 이용하는 애플리케이션들에게 API들을 통해 이용가능하게 될 수 있다.
프로토콜 스택 관점에서, SL들은 전형적으로 애플리케이션 프로토콜 계층 위에 위치하고 이들이 지원하는 애플리케이션들에게 부가 가치 서비스들을 제공할 수 있다. 따라서, SL들은 종종 '미들웨어' 서비스들로서 카테고리화된다. 도 2는 애플리케이션 프로토콜들과 애플리케이션들 사이의 예시적인 서비스 계층을 도시한다.
배치 관점에서, M2M/IoT SL은, 도 3에 도시된 바와 같이, 예를 들어, 서버들, 게이트웨이들 및 디바이스들을 포함하는 다양한 유형들의 네트워크 노드들 상에 배치될 수 있다.
oneM2M SL의 아키텍처는, 도 4에 도시된 바와 같이, 4개의 참조 포인트를 지원할 수 있는 공통 서비스 엔티티(CSE)를 정의한다. Mca 참조 포인트는 애플리케이션 엔티티(AE)와 인터페이싱할 수 있다. Mcc 참조 포인트는 동일한 서비스 제공자 도메인 내에서 다른 CSE와 인터페이싱할 수 있고, Mcc' 참조 포인트는 상이한 서비스 제공자 도메인에서 다른 CSE와 인터페이싱할 수 있다. Mcn 참조 포인트는 기본 네트워크 서비스 엔티티(NSE)와 인터페이싱할 수 있다. NSE는 디바이스 관리, 위치 서비스들 및 디바이스 트리거링과 같은 기본 네트워크 서비스들을 CSE들에 제공할 수 있다. CSE는, "발견", "데이터 관리 및 저장소"와 같은, "공통 서비스 기능들(CSF들)"이라고 불리는 복수의 논리 기능들을 포함할 수 있다. 도 5는 oneM2M에 의해 지원되는 CSF들을 도시하고 있다.
oneM2M 아키텍처는 분산형 아키텍처이고, M2M/IoT 서비스들을 다음과 같은 유형들의 노드들에 걸쳐 분산형 방식으로 배치하는 것을 지원한다:
ㆍ 애플리케이션 서비스 노드(ASN): ASN은 하나의 CSE를 포함하고 적어도 하나의 애플리케이션 엔티티(AE)를 포함하는 노드이다. 예시적인 실시예에서, ASN은 M2M 디바이스에 상주할 수 있다;
ㆍ 애플리케이션 전용 노드(ADN): ADN은 적어도 하나의 AE를 포함하고 CSE를 포함하지 않는 노드이다. 예시적인 실시예에서, 애플리케이션 전용 노드는 제약된 M2M 디바이스에 상주할 수 있다;
ㆍ 중간 노드(MN): MN은 하나의 CSE를 포함하고 0개 이상의 AE를 포함하는 노드이다. 예시적인 실시예에서, MN은 M2M 게이트웨이에 상주할 수 있다;
ㆍ 인프라스트럭처 노드(IN): IN은 하나의 CSE를 포함하고 0개 이상의 AE를 포함하는 노드이다. IN의 CSE는 다른 노드 유형들에 적용가능하지 않은 CSE 기능들을 포함할 수 있다. 예시적인 실시예에서, IN은 M2M 서비스 인프라스트럭처에 상주할 수 있다;
ㆍ 비-oneM2M 노드(NoDN): 비-oneM2M 노드는 oneM2M 엔티티들을 포함하지 않는(AE들도 CSE들도 포함하지 않는) 노드이다. 이러한 노드들은, 관리를 포함한, 연동 목적들을 위해 oneM2M 시스템에 부속된 디바이스들을 나타낸다.
oneM2M 시스템 내에서 지원되는 다양한 엔티티들을 상호접속하는 가능한 구성들이 도 6에 도시된다.
기존 oneM2M 아키텍처는 M2M 등록 기능(MEF)을 정의한다. 이 기능은 식별자들 및 자격증명들을 이용하여 개별 oneM2M 디바이스들(즉, 노드들) 및 애플리케이션들(즉, AE들)의 프로비저닝을 지원한다. 등록되면, 애플리케이션들(즉, AE들)은 이후 안전하게 개별적으로 서비스 계층 엔티티(예를 들어, CSE)에 등록할 수 있다. oneM2M 아키텍처는 또한 M2M 서비스 가입을 정의한다. M2M 서비스 가입은 어느 애플리케이션들 및 디바이스들이 CSE에 등록하도록 허용되는지를 정의한다. 그러나, oneM2M은 M2M 서비스 가입이 어떻게 확립되는지에 대한 프로세스를 정의하지 않는다. 이 프로세스는 대역외 방식으로 발생하는 것으로 가정된다.
예시적인 oneM2M 생태계에서, 다양한 회사들에 의해 제조된 IoT 디바이스들은 개방 및 유연한 생태계에서 이용가능하게 된다. 이러한 생태계에서, 소비자들은 다양한 제조자들로부터 디바이스들을 획득할 수 있고, 이러한 디바이스들을 (예를 들어, 그 홈 네트워크들에) 설치하고 이들 디바이스들이 서로 공존하고 적절하게 기능할 수 있게 한다. 이러한 생태계에서, IoT 서비스 제공자들은 소비자들에게 서비스들을 제공하는 역할을 수행하여 이들이 IoT 디바이스들의 그 다양한 세트들을 관리하고 이들과 상호작용하는 것을 도울 수 있다. 예를 들어, 소비자들이 그 디바이스들 상에서 실행되는 소프트웨어의 버전들을 업데이트하는 것을 도와서, 소프트웨어를 최신 및 현재로 유지하고, 그 디바이스들의 보안이 위험들을 검출하고/하거나 공격들을 막기 위해 정정 조치를 취하는 것에 의해 온전하게 되는지를 모니터하고 보장하고, 그 IoT 디바이스들에 의해 생성되고 수집되는 데이터를 관리하고, 이 데이터를 관리 및 그루밍하여 소비자에게 추가 정보를 제공하기 위한 서비스들이 제공될 수 있다.
기존의 IoT 생태계들은 본질적으로 확장가능하거나 유연하지 않은 IoT 디바이스들 및 서비스들의 배치들을 주로 포함한다. 예를 들어, 자택 소유자는 서비스 제공자로부터 홈 자동화 패키지를 구매할 때, 그 서비스 제공자에 의해서만 제공되는 IoT 디바이스들 및 서비스들을 이용해야 한다(즉, 그 시스템은 폐쇄형 시스템이다). 자택 소유자는 그 선택의 다른 IoT 벤더들로부터 추가적인 디바이스들을 구매하고 추가하는 유연성을 갖지 않으며, 자신의 기존의 제공자에 의해 제공되는 서비스들을 보완하는 다른 서비스 제공자들에 의해 제공되는 추가 서비스들을 추가하는 옵션도 갖지 않는다.
소비자들이 IoT 디바이스들의 상이한 조합들을 배치하고 상이한 서비스들을 이용하는 자유를 갖는 더 확장가능하고 동적인 IoT 생태계를 가능하게 하는 기술적 장애물들 중 하나는 많은 IoT 서비스 제공자들 및 그 IoT 서비스 플랫폼들에 의해 이용되는 비표준화되고, 수동이며, 비-확장가능한 등록 프로세스이다.
전형적으로, 서비스 제공자의 플랫폼 및 그 IoT 서비스들이 액세스될 수 있기 전에, 등록자는 먼저 수동 등록 프로세스를 성공적으로 완료해야 한다. 이러한 프로세스는 전형적으로 그 자신 및 그 IoT 디바이스들, 애플리케이션들, 데이터 및 허가된 사용자들을 IoT 서비스 제공자에게 등록하는 서비스 등록자를 포함할 수 있다. 이 등록 프로세스의 복잡성 및 부담은 정확히 등록자(즉, 고객) 자신의 책임이었다. 전통적으로, 이는 이 프로세스를 완료하기 위해 제공자와의 등록자 개시 접촉(직접, 전화를 통함, 웹을 통함 등)을 수반하는 수동 및 대역외 프로세스를 이용하여 행해졌다. 전형적으로, 이러한 프로세스는 등록자에게 그 디바이스들, 애플리케이션들, 데이터 및/또는 허가된 사용자들에 대한 많은 상세들을 먼저 알 것을 요구할 수 있다. 예를 들어, 이러한 상세들은 제조자, 모델 번호, 일련 번호, 소프트웨어 버전, 네트워크 또는 물리적 위치, 보안 자격증명들 또는 패스워드들, 기능 설정들 등을 포함할 수 있다. 등록자는 이 정보 모두를 수집한 후에, 수동으로 이 정보를 양식에 입력하거나(손으로 쓰거나 전자적으로 기입하거나) 또는 이 정보를 고객 서비스 담당자에게 전달해야 한다. 많은 경우들에서, 등록자(또는 등록자의 디바이스들, 앱들 또는 서비스들 중 하나 이상)는 또한 서비스 제공자의 플랫폼을 수동으로 프로그래밍하여, 그 디바이스들, 애플리케이션들, 데이터 세트들 및 지정된 사용자들 각각에 대한 허가 권한과 같은 추가 정보로 이를 구성하여야 한다. 이들 단계들 모두는 등록자에 대한 등록 프로세스를 복잡하고 압도적으로 만들 수 있다.
추가로, 최근 IoT 네트워크 배치들의 크기 및 복잡성이 증가함에 따라, 등록/재등록/등록 취소의 부담은 이를 떠맡을 등록자들에게 훨씬 더 커지고 있다. 점점 더 많은 IoT 네트워크들이 많은 수들의 IoT 디바이스들을 이용하여 배치되고 있다. 디바이스들 중 다수는 디바이스들과의 인간의 상호작용을 거의 또는 전혀 갖지 않는 원격 및/또는 도달불가능 위치들에 배치되고 있다. 이러한 네트워크들은 또한 추가될 필요가 있는 새로운 디바이스들, 디바이스들에 액세스하도록 허용될 필요가 있는 새로운 사용자들, 및 디바이스들의 소유권에서의 변경들과 같은 동적 변경들을 초래한다. 이러한 인자들 모두는 서비스 등록자들 및 그 IoT 디바이스들, 애플리케이션들, 데이터 및 사용자들을 서비스 제공자의 IoT 플랫폼에 등록하는 훨씬 더 복잡한 작업에 기여한다.
IoT 서비스 등록자들에 대한 서비스 등록 프로세스를 자동화하고 간소화하는 것을 도울 수 있는 IoT 서비스 능력들을 가능하게 하는 시스템들 및 방법들이 본 명세서에 설명된다. 이러한 능력들은 서비스 등록자가 그 자신 및 그 IoT 디바이스들, 애플리케이션들, 데이터 및 사용자들을 서비스 등록자를 나타내는 소프트웨어 프로파일로 가상화할 수 있게 한다. 가상화되면, 서비스 가입자는 이후 그 대신에 서비스 등록의 복잡성들 및 부담을 자동화된 IoT 서비스 등록 소프트웨어 기능에 위임할 수 있다. 마찬가지로, 이러한 IoT 서비스 능력들은 또한 IoT 서비스 제공자들에 대한 서비스 등록 프로세스를 자동화하는 것을 도울 수 있다. 이러한 능력들은 서비스 제공자가 그 자신 및 그 등록 프로세스를 자동화된 소프트웨어 가능 프로세스로 가상화할 수 있게 한다.
IoT 서비스 제공자들에 대한 IoT 서비스 등록자들의 등록을 자동화하기 위한 적어도 다음의 IoT 서비스 능력들의 세트를 가능하게 하는 IoT 시스템을 위한 아키텍처가 본 명세서에서 설명된다.
IoT 서비스 능력 및 방법은 잠재적인 서비스 등록자들이 그들 자신들 및 그 IoT 디바이스들, 애플리케이션들, 데이터 및 사용자들을 IoT 서비스 제공자의 플랫폼에 이후 등록될 수 있는 소프트웨어 엔티티들로 가상화할 수 있게 하기 위해 도입된다.
IoT 서비스 능력 및 방법은 IoT 서비스 제공자들이 발견가능한 IoT 서비스 등록 정보를 그 분산된 IoT 서비스 플랫폼을 통해 공개할 수 있게 하기 위해 도입된다. 이 능력은 또한 잠재적인 서비스 등록자들이 그 IoT 서비스 플랫폼을 통해 서비스 제공자에 의해 공개되는 이용가능한 서비스 등록 옵션들을 질의하고 발견할 수 있게 할 수 있다.
IoT 서비스 능력 및 방법은 서비스 등록자가 서비스 제공자의 플랫폼과의 보안 연관을 확립하고, 이 보안 연관을 통해, 서비스 제공자에 안전하게 등록/재등록/등록 취소할 수 있게 하기 위해 도입된다.
IoT 서비스 능력 및 방법은 가상화된 IoT 서비스 등록자가 그 자신뿐만 아니라 그 IoT 디바이스들, 앱들, 데이터 및 허가된 사용자들을 IoT 서비스 제공자의 플랫폼에 안전하게 동적으로 등록할 수 있게 하기 위해 도입된다. 이러한 방법은 IoT 서비스 플랫폼이 등록자에 대한 허가 정책들의 자동 생성, 등록자의 IoT 디바이스들 및 애플리케이션들의 자동 등록, 및 등록자 데이터의 자동 가져오기와 같은 자동화된 등록 서비스들의 세트를 등록자에게 제공하는 것을 가능하게 할 수 있다.
위의 IoT 서비스 등록 능력들은 IoT 서비스 등록 기능의 진보된 특징들로서 구현될 수 있다. 이러한 기능 및 그 능력들은 IoT 서비스 제공자의 IoT 플랫폼의 지원되는 특징일 수 있고, 서비스 등록자들이 그들 자신들, 그 디바이스들, 그 데이터 및 그 허가된 사용자들을 플랫폼에 등록하기 위해 프로세스를 자동화하는데 이용될 수 있다.
또한 본 명세서에서는 이러한 진보된 IoT 서비스 등록 능력들이 기존의 oneM2M 아키텍처에 어떻게 통합되고 AE들, CSE들, MEF들 및 MAF들과 같은 oneM2M 엔티티들에 의해 이용될 수 있는지를 설명하는 oneM2M 실시예가 설명된다.
M2M 서비스 가입이 어떻게 확립되는지에 대한 프로세스를 oneM2M이 정의하지 않기 때문에, oneM2M 아키텍처는 하나 이상의 IoT 디바이스, 애플리케이션, 데이터 세트 및/또는 허가된 사용자에 대한 소유권 또는 관리 권한들을 갖고 그 자신뿐만 아니라 이들 엔티티들을 서비스 제공자에 등록하는 서비스 가입자의 개념을 지원하지 않는다.
또한, 서비스 제공자들이 그 서비스들을 소비자들 및 그 IoT 디바이스들에게 개방 방식으로 제공할 수 있는 생태계가 존재하는 경우, 호환가능한 서비스들을 제공하는 서비스 제공자들을 발견하기 위한 더 자동화된 방법들이 필요하다. 또한, 소비자들 및 그 IoT 디바이스들을 이들 서비스 제공자들에 등록하는 더 자동화되고 동적인 방법들도 필요하다. 이러한 더 자동화된 방법들을 제공하는 것은 소비자들이 그 기능적 요구들에 맞는 IoT 디바이스들을 자유롭게 구매하고, 차례로 이러한 디바이스들을 찾고 이러한 디바이스들에게 호환가능한 서비스들을 제공하는 서비스 제공자들에게 이러한 디바이스들을 등록하는 것을 허용할 수 있다.
본 명세서에 설명된 능력들 및 예시적인 실시예들은 무엇보다도 전술한 문제들에 대한 해결책들을 제공할 수 있다. 구체적으로, IoT 서비스 등록자들 및 서비스 제공자들에 의한 이러한 능력들의 이용은 더 확장가능한 IoT 생태계를 가능하게 할 수 있다. 이 생태계 내에서, 소비자들은 자신들이 선택한 다양한 유형들의 디바이스들을 구매하여 자신들의 네트워크들에 추가하는 자유 및 다양한 서비스 제공자들로부터 제공되는 서비스들을 발견하고 이용하기 위한 유연성을 가질 수 있다.
자동화된 서비스 등록(ASE) 능력들은 2개의 논리 기능으로서 구현될 수 있다. 제1 기능은 자동화된 서비스 등록 클라이언트(ASE-C) 기능일 수 있다. 제2 기능은 자동화된 서비스 등록 서버(ASE-S) 기능일 수 있다.
ASE-C 및 ASE-S에 대한 복수의 배치 옵션들이 존재한다. 예를 들어, 도 8에 도시된 바와 같이, ASE-C는 가상화된 IoT 서비스 등록자에 기능으로서 통합될 수 있고, ASE-S는 IoT 서비스 플랫폼 내의 기능으로서 통합될 수 있다. 대안적으로, 도 9에 도시된 바와 같이, ASE-S는 그 자신의 독립형 서비스로서 배치될 수 있다. 이러한 경우에, ASE-C는 또한 IoT 서비스 플랫폼에 통합될 수 있다. 가상화된 IoT 서비스 등록자 및 IoT 서비스 플랫폼 내의 ASE-C들은 독립형 ASE-S와 통신하는데 이용될 수 있다.
ASE의 기능을 클라이언트(ASE-C) 및 서버(ASE-S)로 분할하는 것은 구성요소들 간에 ASE 논리를 분할하는 방법을 설명하는 단지 하나의 예시적인 실시예이다. 다른 구성들이 또한 가능하다.
도 10은 본 명세서에 설명된 바와 같은 자동화된 서비스 등록 클라이언트(ASE-C) 기능의 예시적인 실시예를 도시한다. 이러한 기능은 서비스 등록자의 가상화를 지원하기 위해 새로 도입된 능력들의 세트를 지원할 수 있다. 이러한 능력들은 다음을 포함할 수 있다: 서비스 등록자 가상화 능력; 서비스 등록 질의 및 발견 클라이언트 능력; 서비스 등록 보안 연관 클라이언트 능력; 및 서비스 등록 클라이언트 능력.
서비스 등록자가 가상화된 후에, ASE-C 기능은 서비스 제공자들의 발견을 자동화하기 위한 능력들을 지원하고, 서비스 제공자와의 보안 연관 및 IoT 서비스 제공자(들)에 의해 운영되는 IoT 서비스 플랫폼(들)에 대한 가상화된 IoT 서비스 등록자의 보안 등록을 확립할 수 있다.
도 11은 본 명세서에 설명된 바와 같은 자동화된 서비스 등록 서버(ASE-S) 기능의 예시적인 실시예를 도시한다. 이러한 기능은, 서비스들의 유형들, 데이터 저장소의 최대량, 지원되는 데이터의 유형들, 디바이스들의 최대 수, 지원되는 디바이스들의 유형들, 애플리케이션들의 최대 수, 애플리케이션들의 유형들, 허가된 사용자들의 최대 수 및 주어진 기간 동안의 허용된 통지들의 최대 수와 같은 지원되는 서비스 제공자 등록 옵션들의 공개를 자동화하기 위해 새로 도입된 능력들의 세트를 지원할 수 있다. ASE-S는 또한 서비스 등록자들로부터의 서비스 제공자 발견 요청들의 서비스를 지원하고 IoT 서비스 제공자들에 의해 운영되는 IoT 서비스 플랫폼들에의 IoT 서비스 등록자들의 등록 및 서비스 등록자들과의 보안 연관의 확립을 지원할 수 있다. 이러한 능력들은 다음을 포함할 수 있다: 서비스 등록 공개 능력; 서비스 등록 질의 및 발견 서버 능력; 서비스 등록 보안 연관 서버 능력; 및 서비스 등록 서버 능력. ASE-S와 ASE-C는 함께 IoT 서비스 제공자 플랫폼들에 등록하기 위해 IoT 서비스 등록자들에게 자동화되고 안전한 방법을 제공할 수 있다.
IoT 서비스 등록자들 및 그 IoT 디바이스들, 애플리케이션들, 데이터 및 허가된 사용자들의 IoT 서비스 제공자의 플랫폼에의 등록을 자동화하기 위한 방법이 도입된다. 도 7은 새로운 서비스 등록 능력들의 세트에 의해 가능해진 이러한 프로세스를 도시하는 흐름도이다.
단계 1에서, ASE-S의 새로운 서비스 등록 공개 능력을 이용하여, IoT 서비스 제공자의 플랫폼은, 서비스들의 유형들, 데이터 저장소의 최대량, 지원되는 데이터의 유형들, 디바이스들의 최대 수, 지원되는 디바이스들의 유형들, 애플리케이션들의 최대 수, 애플리케이션들의 유형들, 허가된 사용자들의 최대 수 및 주어진 기간 동안의 허용된 통지들의 최대 수와 같은 제공자의 지원되는 서비스 등록 옵션들의 리스트를 공개할 수 있다.
단계 2에서, ASE-C의 새로운 서비스 등록자 가상화 능력을 이용하여, 인간 IoT 서비스 등록자는 자신의 소프트웨어 표현으로 가상화될 수 있고, 마찬가지로 그 IoT 디바이스들, 애플리케이션들, 데이터 세트들 및 허가된 사용자들은 또한 자신들의 소프트웨어 표현들로 가상화될 수 있다. 이러한 가상화에 관한 추가적인 상세들이 이하에서 설명된다.
단계 3에서, ASE-C의 새로운 서비스 등록 질의 및 발견 능력을 이용하여, 가상화된 IoT 서비스 등록자(즉, 서비스 등록자를 대신하여 동작하는 ASE-C)는 그 요건들을 충족시키는 서비스 등록 옵션들을 제공하는 이용가능한 IoT 서비스 제공자들을 발견하기 위한 질의를 수행할 수 있다. 이러한 질의는 ASE-S를 향할 수 있다. ASE-S는 IoT 서비스 제공자에 의해 그 플랫폼 내의 기능으로서 또는 IoT 디바이스 제조자의 웹 사이트 등과 같은 다른 엔티티들에 의해 배치될 수 있다. 발견 결과들은 제안된 IoT 서비스 제공자들, 서비스 등록 옵션들, 서비스 제공자 보안 연관 능력들, 및 부트스트래핑 서버 어드레스들 또는 아이덴티티들의 리스트를 포함할 수 있다. 발견 결과들에 기반하여, 가상화된 서비스 등록자는 이후 그 요건들을 충족시키는 서비스 제공자를 선택할 수 있다.
단계 4에서, ASE-C 및 ASE-S의 새로운 서비스 제공자 보안 연관 능력을 이용하여, 가상화된 IoT 서비스 등록자(즉, 서비스 등록자를 대신하여 동작하는 ASE-C)는 IoT 서비스 제공자와의 부트스트랩 동작을 수행할 수 있다. 부트스트랩은 서비스 등록 자격증명들 및 식별자들의 가상화된 서비스 등록자 및 선택된 서비스 제공자의 플랫폼에의 프로비저닝을 초래할 수 있다.
단계 5에서, 단계 4에서 획득된 자격증명들을 이용하여, 가상화된 IoT 서비스 등록자(즉, 서비스 등록자를 대신하여 동작하는 ASE-C)는 IoT 서비스 제공자의 ASE-S의 인증을 수행하고 그 반대도 가능하며, 그들 자신들 간의 보안 연관을 확립할 수 있다.
단계 6에서, 단계 5에서 확립된 보안 연관을 이용하여, 가상화된 IoT 서비스 등록자(즉, 서비스 등록자를 대신하여 동작하는 ASE-C)는 하나 이상의 IoT 서비스 제공자의 ASE-S에 자신을 등록할 수 있다.
단계 7에서, 새로운 서비스 등록자 등록 능력을 이용하여, 가상화된 IoT 서비스 등록자(즉, 서비스 등록자를 대신하여 동작하는 ASE-C)는 하나 이상의 IoT 서비스 제공자에게 자신을 (필요한 경우) 재등록할 수 있다. 예를 들어, 이러한 프로세스는 수정들이 필요할 때(예를 들어, 새로운 IoT 디바이스들, 애플리케이션들, 데이터 세트들 또는 사용자들을 추가할 때) 수행될 수 있다. 유사하게, IoT 서비스 제공자는 (필요한 경우) 재등록을 개시할 수 있다. 예를 들어, 이것은 등록자의 디바이스들, 애플리케이션들, 데이터 세트들 또는 허가된 사용자들 중 하나 이상이 서비스 제공자에 의해 정의되는 정책들 및 규칙들을 준수하지 못하면 필요할 수 있다.
단계 8에서, 새로운 서비스 등록 능력을 이용하여, 가상화된 IoT 서비스 등록자(즉, 서비스 등록자를 대신하여 동작하는 ASE-C)는 하나 이상의 IoT 서비스 제공자로부터 (필요한 경우) 자신을 등록 취소할 수 있다. 예를 들어, 이러한 프로세스는 서비스 등록자가 IoT 서비스 제공자와의 그 관계를 종료하기로 결정할 때(예를 들어, 제공자들을 변경할 때) 수행될 수 있다. 유사하게, IoT 서비스 제공자는 (필요한 경우) 등록 취소를 개시할 수 있다. 예를 들어, 이러한 프로세스는 등록자(즉, 디바이스 소유자)가 서비스 제공자의 규칙들 또는 정책들에 따르지 못하는 경우에 필요할 수 있다.
본 명세서에서는 IoT 서비스 등록자를 등록자 및 그 IoT 디바이스들, 애플리케이션들, 데이터 세트들 및 허가된 사용자들을 나타내는 소프트웨어 프로파일로 가상화하는 능력이 도입된다. 이러한 소프트웨어 프로파일은 그 IoT 디바이스들, 애플리케이션들, 데이터 세트들 및 허가된 사용자들 및 그들 사이에 존재하는 관계들(즉, 도 1에서 캡처된 것)에 관한 정보뿐만 아니라, 등록자의 서비스 등록 정보 및 선호도들을 효과적으로 캡처할 수 있다. IoT 서비스 등록자를 가상화하는 능력은 서비스 등록자의 IoT 서비스 제공자의 IoT 플랫폼에의 자동화된 등록을 용이하게 할 수 있다. 서비스 등록자를 그 서비스 등록자의 소프트웨어 프로파일로 가상화함으로써, 서비스 등록자와 서비스 제공자 사이에서 통상적으로 수행되는 수동 및 인간 상호작용 동작들이 서비스 등록자와 제공자를 대신하여 소프트웨어로 자동화되고 수행될 수 있다.
서비스 등록자 가상화를 가능하게 하기 위해, 본 명세서에 설명된 것은 서비스 등록자 및 그 연관된 IoT 디바이스들, 애플리케이션들, 데이터 및 사용자들의 가상화의 프로세스의 자동화를 가능하게 하는 새로운 능력이다. 이러한 능력은 본질적으로 분산될 수 있고 새로운 ASE-C 기능에 의해 호스팅되는 구성요소 및 새로운 ASE-S 서버 기능에 의해 호스팅되는 구성요소를 포함할 수 있다. 이러한 능력은 서비스 등록자가 그 자신 및 그 IoT 디바이스들, 애플리케이션들, 데이터 및 사용자들을 더 용이하게 가상화할 수 있게 하는 사용자 인터페이스를 지원할 수 있다. 이 사용자 인터페이스 자체는 서비스 등록자의 가상화 프로세스를 자동화하는 것을 돕기 위한 특징들을 지원할 수 있다. 인터페이스의 특징은 IoT 서비스 등록자 가상화의 자동화를 위한 사진들의 이용일 수 있다. 예시적인 실시예에서, 운전 면허증, 신용 카드 또는 공과금 청구서와 같은 그 식별의 사진들뿐만 아니라 서비스 등록자의 사진들이 등록자에 대한 서비스 등록 정보를 수집하는데 이용될 수 있다. 다른 예시적인 실시예에서, 서비스 등록자의 가족 구성원들 및/또는 친구들의 사진들 또는 그 식별의 사진들은 또한 서비스 등록자의 허가된 사용자들의 리스트에 관한 등록 정보를 수집하는데 이용될 수 있다. 또 다른 예시적인 실시예에서, 서비스 등록자의 IoT 디바이스들의 사진들은 그 IoT 디바이스들에 관한 등록 정보뿐만 아니라 이들 디바이스들 상에 호스팅되는 애플리케이션들의 유형들 또는 이들 디바이스들에 의해 생성되거나 소비되는 데이터를 수집하는데 이용될 수 있다. 예를 들어, IoT 디바이스 상의 스티커 또는 라벨의 사진은 일련 번호, IMEI, IMSI, MAC ID, QR 코드, URL, 바코드 등과 같이 디바이스에 관한 식별 정보를 캡처하는데 이용될 수 있다. 추가적으로, 다른 식별 정보가 디바이스 상에서 보일 수 있고 디바이스 하우징의 내부에서만 보일 수 있거나 디바이스 메모리에 프로비저닝되고 구매 시에 고객에게 제공될 수 있다.
이러한 사용자 인터페이스는 서비스 등록자가 사진들을 찍고/찍거나 업로드할 수 있게 하는 메커니즘을 지원할 수 있다. 이러한 메커니즘은 카메라와 함께 (예를 들어, 카메라를 또한 호스팅하는 스마트폰 상의 앱으로서) 이 능력을 공동 호스팅함으로써 가능하게 될 수 있다. IoT 디바이스의 사진이 찍히거나 업로드된 후, 이 능력은 사진으로부터 IoT 서비스 등록에 관련된 정보를 추출할 수 있다.
예시적인 실시예에서, 디바이스의 제조자, 모델 및 일련 번호와 같은 정보가 사진으로부터 추출될 수 있다. 다른 예시적인 실시예에서, 이러한 디바이스들 상에 호스팅되거나 이러한 디바이스들에 의해 생성 또는 소비되는 애플리케이션들 및 데이터의 유형들과 같은 정보는 디바이스의 제조자 및 모델이 알려지면 추론될 수 있다. 서비스들의 유형들 또는 심지어 호환가능한 서비스 벤더들과 같은 추가 정보가 또한 결정될 수 있다. 이러한 정보는 IoT 디바이스의 패키징(예를 들어, 바코드, QR 코드, URL, 제조자 번호 및 일련 번호 등)에 인쇄된 정보로부터 추출될 수 있다. 대안적으로, 이 능력은 인기있는 IoT 디바이스 이미지들의 원격 호스팅된 데이터베이스(들)와의 통신(예를 들어, IoT 레지스트리들 또는 다양한 제조자 호스팅된 데이터베이스들에의 질의) 또는 로컬 데이터베이스를 지원할 수 있다. 이 능력은 사진 내의 IoT 디바이스의 이미지 및 아마도 사진으로부터 추출할 수 있는 추가 정보를, 일치를 검색하고 찾기 위해 이들 데이터베이스들에 저장된 인기있는 IoT 디바이스들의 이미지들 및 정보와 비교하는 것을 지원할 수 있다. 일치가 발견되면, IoT 디바이스의 제조자 및 모델과 같은 정보, 디바이스에 의해 호스팅되는 소프트웨어의 유형 및 디바이스에 의해 생성되거나 소비되는 데이터의 유형이 결정될 수 있다. 이러한 기능은 복수의 IoT 하위 구성요소 레벨 디바이스들(예를 들어, 복수의 센서들 또는 액추에이터들)을 호스팅하는 더 복잡한 디바이스들을 검출하고 등록하는 능력을 또한 지원하도록 추가로 확장될 수 있다. 예를 들어, 복잡한 공장 기계의 일부는 상이한 제조자들에 의해 생성되거나 상이한 모델들 또는 버전들을 갖고, 각각 상이한 기능을 갖는 몇몇 IoT 센서들 및 액추에이터들을 호스팅할 수 있다. 이러한 능력은 일치를 찾으려고 시도하기 위해 인기있는 IoT 디바이스들의 사진들 및 정보를 포함하는 데이터베이스(들)를 스캐닝함으로써 복잡한 디바이스의 식별을 지원할 수 있다. 발견되면, 이러한 더 복잡한 디바이스에 의해 호스팅되는 IoT 구성요소 레벨 디바이스들의 지원되는 세트에 관한 정보는 자동화된 방식으로 발견될 수 있다. 서비스 제공자의 플랫폼에 등록할 때, 복잡한 디바이스에 관한 정보가 제공될 수 있는 것은 물론, 그 하위 구성요소 레벨의 IoT 디바이스들 각각에 관한 정보도 제공될 수 있다.
다른 예시적인 실시예에서, 디바이스의 배치 환경들과 같은 추가적인 컨텍스트 정보가 또한 이 능력에 의해 추출될 수 있다. 예를 들어, IoT 디바이스들 자체의 사진들에 더하여, 그 배치 환경들의 사진들이 또한 찍히고 IoT 서비스 등록을 자동화하는데 도움을 주기 위해 이용될 수 있다. 일 실시예에서, IoT 디바이스의 물리적 환경들의 모습들은 이 능력에 의해, 디바이스가 배치되는 위치(예를 들어, 주방 또는 욕실 내에 배치됨), IoT 디바이스가 수집할 수 있는 정보의 유형들(예를 들어, 집의 위층 또는 아래층에서의 온도), 및 디바이스가 수행할 수 있는 동작들의 유형들(예를 들어, 스위치가 조명들을 켜거나/끄거나 차고 문을 개폐하는지 여부)과 같은 추가적인 컨텍스트를 수집하는데 이용될 수 있다. 이러한 추출된 정보를 활용하여, 이 능력은 IoT 디바이스의 환경들을 처리하고 그 위치 또는 그 기능에 대한 추론들을 행할 수 있다. 예를 들어, 이 능력은 조명 스위치가 레인지 근처에 있다는 것을 사진으로부터 추출하는 경우 IoT 디바이스가 주방 조명 스위치이고, 조명 스위치가 화장실 근처에 있다는 것을 검출하는 경우 IoT 디바이스가 욕실 조명 스위치인 것으로 추론할 수 있다. 이러한 추출된 정보는 디바이스에 대한 이름 또는 식별자를 생성하는데 이용될 수 있다. 예를 들어, 추출된 정보는 디바이스를 "주방 콘센트" 또는 "현관문 자물쇠"라고 명명하는데 이용될 수 있다. GUI는 등록 이전에(또는 이후에) 제안된 이름, 위치 또는 기능을 변경하는 옵션을 등록자에게 제공할 수 있다. 따라서, 이 정보는 자동화된 제안으로서 기능할 수 있으며, 이는 등록자가 이후 확인을 요청받을 수 있다.
서비스 등록자 가상화 능력은 IoT 디바이스들의 사진들을 추가 서비스 등록자 사진들과 비교하여 사진들 간의 컨텍스트 정보(예를 들어, 벽에 걸려 있는 일치하는 초상화 또는 테이블 위의 램프)에서의 일치들을 검출하는 능력을 지원할 수 있다. 그렇게 함에 있어서, 이 능력은 그 배치 위치뿐만 아니라 그 환경들에서의 IoT 디바이스의 유형 및 기능에 대한 추론들을 행하기 위해, 모두가 IoT 디바이스 자체를 포함하지 않을 수 있거나 동시에 촬영되지 않았을 수 있는 복수의 사진들로부터 합쳐진 정보를 이용할 수 있다. 이것은, 그 능력이 이후 IoT 서비스 등록 정보를 추출할 수 있는, 컨텍스트 정보의 더 풍부하고 더 광범위한 풀을 가능하게 할 수 있다. 예시적인 실시예에서, 이러한 능력은 (예를 들어, 스마트폰 상에서 함께 공동 호스팅되는) 로컬 데이터베이스에서의 서비스 등록자 사진들의 스캐닝을 지원할 수 있다. 다른 예시적인 실시예에서, 이 능력은 서비스 등록자의 클라우드 계정에서 호스팅되는 사진들을 스캐닝할 수 있다. 또 다른 예시적인 실시예에서, 이 능력은 서비스 등록자의 소셜 미디어 계정들 또는 근처에 있고 이 능력에 대해 이용가능하고 개방된 이용가능한 소셜 미디어 계정들을 갖는 가족 구성원들, 친구들 또는 다른 서비스 등록자들의 계정들 중 하나 이상으로부터의 사진들을 스캐닝할 수 있다.
서비스 등록자 가상화 능력은 또한 서비스 등록의 자동화를 돕기 위해 추가의 서비스 등록자 관련 메타데이터로 사진으로부터 추출된 정보를 보충할 수 있다. 예시적인 실시예에서, 서비스 등록자의 IoT 디바이스들의 위치 정보가 보충될 수 있다. 예를 들어, 위치 정보는 서비스 등록자 가상화 능력과 함께 호스팅되는 GPS 능력 및 서비스 등록자의 IoT 디바이스들에 매우 근접하여 사진들을 찍는데 이용되는 카메라로부터 획득될 수 있다. 다른 예시적인 실시예에서, 서비스 등록자 가상화 능력은 서비스 등록자가 디바이스의 상대 위치를 정의하는 것을 허용할 수 있다. 이것은 "현관문 자물쇠" 또는 "뒷문 자물쇠"와 같은 설명을 입력하거나, IoT 디바이스를 설명하는데 이용될 수 있는 섬네일과 같은 사진을 부착함으로써 행해질 수 있다.
본 명세서에 도입된 다른 방법은 등록자가 자신의 IoT 네트워크의 드로잉을 생성하는 것을 허용할 수 있는 GUI를 지원하기 위해 등록자, 그 IoT 디바이스들, 애플리케이션들, 데이터 및 사용자들의 가상화를 자동화하는 것이다. 이러한 드로잉은 자신의 집 내의 방들의 배치, 이러한 방들 내의 디바이스들의 위치들, 디바이스 정보, 애플리케이션 정보, 데이터 정보, 및 사용자 정보와 같은 상세들을 포함할 수 있다. GUI는 드로잉 프로세스를 자동화하기 위해 드로잉 툴들, 위젯들, 아이콘들 및 메뉴들을 제공함으로써 등록자를 보조하는 것을 지원할 수 있다. GUI는 또한 (예를 들어, 다른 드로잉 툴들에 의해) 외부적으로 생성된 드로잉들의 업로드를 지원할 수 있다.
다른 예시적인 실시예에서, 카메라 및 사진이 IoT 서비스 등록자 및 그 디바이스들을 가상화하는데 이용되는 것보다는 오히려, NFC 기술이 이용될 수 있다. 이러한 방법은 NFC 능력을 (예를 들어, NFC 기능을 또한 지원하는 스마트폰 상의 ASE-C로서) NFC 가능 사용자 디바이스와 함께 공동 호스팅함으로써 가능하게 될 수 있다. 등록자는 IoT 디바이스들 근처의 NFC 가능 사용자 디바이스를 스와이핑할 수 있고, 관련 정보(예를 들어, 제조자, 모델 등)는 ASE-C로 전송될 수 있다. 추가적으로 또는 대안적으로, NFC 정보는 IoT 디바이스 정보(예를 들어, 제조자의 웹사이트 또는 데이터베이스)를 어디에서 찾을 수 있는지를 등록 툴에게 알려줄 수 있다. 등록자 정보의 경우, ASE-C는 등록자 정보뿐만 아니라 등록자의 현재 위치와 같은 다른 컨텍스트를 얻기 위해 셀룰러 네트워크(들)에 질의할 수 있다.
이런 새로운 능력을 통해 그 서비스 등록 관련 정보를 수집함으로써 서비스 등록자가 가상화된 후에, 이 정보는 이후 ASE-C 및 ASE-S 기능들에 의해 지원되는 다른 새로운 능력들에 전달될 수 있다. 그렇게 함에 있어서, 서비스 제공자와의 서비스 등록자의 등록은 자동화될 수 있고, 더 이상 서비스 등록자 또는 제공자로부터의 수동 개입을 요구하지 않을 수 있다.
이러한 서비스 등록자 가상화 능력을 이용하여, 서비스 등록자는 또한 서비스 등록자 및/또는 서비스 제공자를 대신하여 서비스 등록 선택들을 행함에 있어서 ASE-C 및 ASE-S 기능들을 안내하는데 이용될 수 있는 서비스 등록 정책들 또는 규칙들을 생성할 수 있다. 이러한 정책들은 가상화 프로세스 동안 그리고/또는 이 능력의 사용자 인터페이스를 통해 서비스 등록자에 의해 구성될 수 있다. 인터페이스는 서비스 등록 정책 구성 특징들을 지원할 수 있다. 예시적인 실시예에서, 이 능력은 서비스 등록자가 선택할 수 있는 미리 구성된 서비스 등록 정책 선택들의 세트(즉, 메뉴)를 지원할 수 있다. 예를 들어, 서비스 등록 정책 선택들은 서비스들의 유형들, 데이터 저장소의 최대량, 지원되는 데이터의 유형들, 디바이스들의 최대 수, 지원되는 디바이스들의 유형들, 애플리케이션들의 최대 수, 애플리케이션들의 유형들, 허가된 사용자들의 최대 수 및 주어진 기간 동안의 허용된 통지들의 최대 수를 포함할 수 있다.
새로운 서비스 등록 공개, 질의, 및 발견 능력은 이용가능한 IoT 서비스 제공자들 및 이들 제공자들 및 그 IoT 서비스 플랫폼들에 의해 지원되는 서비스 등록 옵션들을 발견하는데 이용될 수 있다. 이러한 능력은 본질적으로 분산될 수 있고 새로운 ASE-C 기능에 의해 호스팅되는 구성요소 및 새로운 ASE-S 기능에 의해 호스팅되는 구성요소를 포함할 수 있다.
서비스 등록 공개, 질의, 및 발견 능력은 IoT 서비스 제공자들이 서비스 제공자 제안들 및 이용가능한 옵션들에 관한 발견가능한 IoT 서비스 등록 정보를 등록자에게 공개하게 할 수 있다. 이 능력은 서비스 등록 공개 API를 지원할 수 있고, 이는 서비스 제공자뿐만 아니라 제3자 애플리케이션/서비스 제공자들이 서비스 등록 관련 정보를 그 IoT 서비스 플랫폼에 프로그램적으로 공개하게 할 수 있다. 제공자에 의해 IoT 서비스 플랫폼에 공개된 서비스 등록 정보의 유형들은 다음 중 하나 이상을 포함할 수 있지만, 이에 제한되는 것은 아니다:
ㆍ IoT 서비스 플랫폼에 의해 지원되는 IoT 서비스들의 유형들 및 아이덴티티들;
ㆍ IoT 서비스 플랫폼 및 제공자에 의해 지원되는 자동화된 등록 옵션들 및 절차들에 관한 정보로서, 다음을 포함할 수 있다:
하나 이상의 서비스에 대한 자동화된 서비스 등록이 지원되는지 여부; 및
서비스들에의 액세스를 위해 어떻게 등록하는지에 대한 자동화된 등록 명령어들;
ㆍ 하나 이상의 지원되는 IoT 서비스가 이용가능하고 온라인으로 이용하도록 스케줄링된 시간들(예를 들어, 시각, 주 또는 달);
ㆍ 제공된 서비스들 중 어느 것이 공개 이용을 위해 개방되는지에 관한 정보;
ㆍ 제공된 서비스들 중 어느 것이 액세스하기 위해 서비스 등록 계획을 요구하는지에 관한 정보;
ㆍ 제공된 서비스들 중 어느 것이 액세스하기 위해 서비스 등록 계획을 요구하기 전에 공개 이용을 위해 서비스가 개방되는 초기 시험 기간을 갖는지에 관한 정보;
ㆍ IoT 디바이스들, 애플리케이션들, 및 서비스 제공자에 의해 등록하도록 지원되거나 허용되는 그 벤더들 및/또는 제조자들의 데이터의 유형들;
ㆍ 서비스 등록을 요구하는 서비스들의 경우, 액세스의 조건들 또는 기간들에 관한 정보, 예컨대 다음과 같다:
서비스에 액세스하는 것에 대한 임의의 스케줄 제한들(예를 들어, 시간당 한 번의 액세스, 하루의 특정 시간들 동안에만 액세스 등)이 있는 경우;
서비스에 액세스하는 것에 대한 임의의 데이터 사용량 제한들(예를 들어, 요청당 100 바이트)이 있는 경우;
서비스에 액세스하는 것에 대한 임의의 위치 제한들(예를 들어, 특정 네트워크 도메인 또는 지리적 영역 내의 서비스에만 액세스)이 있는 경우;
서비스에 액세스하는 것에 대한 임의의 프로토콜 또는 데이터 모델 제한들(예를 들어, 특정 프로토콜들 또는 데이터 모델이 이용되는 경우에만 허용되는 액세스)이 있는 경우;
서비스와 연관된 프라이버시 정책들; 및
얼마나 많은 개별 사용자들이 서비스를 공유할 수 있는지.
서비스 제공자의 보안 자격증명(공개 키 증명서)이 공개되어 클라이언트들이 서비스 제공자를 (옵션으로서) 인증하기 위한 발견 응답에 포함될 수 있다. 또한, 이러한 자격증명은 서비스 제공자와의 보안 연관을 확립할 때 서비스 등록자에 의해 이용될 수 있다.
이러한 서비스 등록 공개, 질의 및 발견 능력은 또한 가상화된 IoT 서비스 등록자들이 서비스 등록 질의들을 발행하여 이용가능한 서비스 제공자들을 발견하는 것을 가능하게 할 수 있다. 예를 들어, 가상화된 IoT 서비스 등록자(즉, ASE-C)는 ASE-S에 질의들을 발행할 수 있다. 예를 들어, 이러한 ASE-S는 서비스 제공자들의 IoT 플랫폼에서의 기능으로서 또는 그 어드레스가 가상화된 IoT 서비스 등록자에게 프로비저닝될 수 있는 디바이스 제조자의 웹사이트 또는 데이터베이스의 기능으로서 배치될 수 있다. 질의들은 서비스 제공자 등록 옵션들 및 이들이 서비스 등록자의 요건들을 충족시키는지를 발견하는데 이용될 수 있다. 이 능력은 서비스 등록 발견 API를 지원할 수 있고, 이는 서비스 등록자가 이용가능한 IoT 서비스 플랫폼들 및 그 제공자들로부터 서비스 등록 관련 정보를 프로그램적으로 발견하는 것을 가능하게 할 수 있다. 이러한 요청들은 등록자(즉, 인간)의 수동 개입 없이 ASE-C에 의해 자동화되고 프로그램적 방식으로 행해질 수 있다. 이러한 자동화 및 머신 중심 발견 메커니즘은 많은 IoT 이용 사례들 및 배치들에 대한 중요한 요건일 수 있다. 가상화된 서비스 등록자가 질의에서 지정할 수 있는 서비스 등록 발견 기준들의 유형들은 다음 중 하나 이상을 포함할 수 있지만, 이들로 제한되지 않는다:
ㆍ 액세스하기 위해 서비스 등록을 요구하지 않는 서비스 제공자들에 의해 제공되는 서비스들의 발견;
ㆍ IoT 디바이스들, 애플리케이션들, 또는 특정 벤더 또는 제조자로부터의 데이터(즉, 등록자가 등록하려고 하는 디바이스들, 애플리케이션들, 데이터, 사용자들의 유형들의 리스트)에 의해 그 서비스(들)의 이용을 제공하는 IoT 서비스들의 발견;
ㆍ 서비스 등록들을 요구하지만 등록자의 다음의 서비스 등록 요건들 중 하나 이상을 충족시키는 서비스 제공자들에 의해 제공되는 서비스들의 발견:
지정된 시간들 동안 서비스(들)에의 액세스를 제공하는 IoT 서비스들;
서비스(들)에의 액세스가 개방되는 시험 기간을 제공하는 IoT 서비스들;
지정된 시간 간격 내에 최소 액세스 횟수를 제공하는 IoT 서비스들;
등록될 최소 수의 IoT 디바이스들, 애플리케이션들, 사용자들을 제공하는 IoT 서비스들;
요청마다, 주어진 시간 간격마다, IoT 디바이스마다, IoT 사용자마다, IoT 애플리케이션 등마다 최소량의 데이터 사용량을 제공하는 IoT 서비스들;
특정 네트워크 또는 지리적 영역(들) 내에서와 같이 지정된 위치 영역들 내에서의 이용 또는 위치 제한들 없이 서비스(들)의 이용을 제공하는 IoT 서비스들;
지정된 직렬화 방식들, 데이터 모델들, 스키마들 또는 온톨로지들을 지원하는 IoT 디바이스들, 애플리케이션들, 또는 서비스에 의해 그 서비스(들)의 이용을 제공하는 IoT 서비스들;
지정된 전송 프로토콜들을 지원하는 IoT 디바이스들, 애플리케이션들, 또는 서비스에 의해 그 서비스(들)의 이용을 제공하는 IoT 서비스들;
엔드-투-엔드 보안, 콘텐츠 또는 오브젝트 기반 보안, 특정 보안 프로토콜들, 보안 알고리즘들, 및 보안 자격증명 부트스트래핑 메커니즘들과 같은 지정된 보안 메커니즘들을 지원하는 IoT 디바이스들, 애플리케이션들, 또는 서비스들에 의해 그 서비스(들)의 이용을 제공하는 IoT 서비스들;
그 IoT 디바이스들 또는 데이터에 대한 다른 등록자의 액세스를 승인할 필요 없이 그 서비스(들)의 이용을 제공하는 IoT 서비스들;
특정 프라이버시 정책들을 갖는 IoT 서비스들; 및
IoT 디바이스들, 애플리케이션들, 또는 특정 벤더 또는 제조자로부터의 데이터에 의해 그 서비스(들)의 이용을 제공하는 IoT 서비스들.
예시적인 실시예에서, 서비스 등록 공개, 질의, 및 발견 능력의 API는 본질적으로 RESTful일 수 있고, 서비스 제공자가 발견가능한 서비스 등록 정보를 이용하여 생성 또는 업데이트할 수 있는 하나 이상의 리소스를 포함할 수 있고, 차례로 서비스 등록자는 서비스 등록 옵션들 및 일치하는 서비스 등록들을 검색하고 발견할 수 있다.
새로운 서비스 등록자 및 제공자 보안 연관 능력은 가상화된 IoT 서비스 등록자와 IoT 서비스 제공자의 플랫폼 사이의 보안 연관을 확립하는데 이용될 수 있다. 이러한 능력은 가상화된 서비스 등록자가 IoT 서비스 제공자의 플랫폼으로 서비스를 등록하는데 필요한 IoT 서비스 등록 자격증명들 및 식별자들을 안전하게 부트스트래핑하기 위한 기능을 지원할 수 있다. 이 부트스트래핑은 클라이언트 구성요소 및 서버 구성요소를 포함할 수 있다. 클라이언트 구성요소는 ASE-C에 의해 지원될 수 있다. 서버 구성요소는 ASE-S에 의해 지원될 수 있다.
ASE-S 기능은 IoT 서비스 등록 식별자들 및 자격증명들을 ASE-C 기능과 부트스트래핑하는데 이용될 수 있다. 이러한 부트스트래핑은 그 서비스 등록 요건들을 충족시키고 그 후에 ASE-C가 등록하기로 결정하는 IoT 서비스 제공자의 플랫폼을 질의하고 발견한 후에 ASE-C 기능에 의해 개시될 수 있다.
서비스 등록자 및 제공자 보안 연관 능력은 IoT 서비스 제공자들이 이용가능한 IoT 서비스 등록 식별자들 및 자격증명들의 풀을 구성하게 할 수 있으며, 이는 이어서 주어진 IoT 서비스 제공자의 플랫폼에 등록하기를 원하는 서비스 등록자들에게 부트스트래핑될 수 있다. 이 능력은 서비스 제공자가 이용가능한 서비스 등록 자격증명들 및 식별자들의 풀들을 프로그램적으로 공개하게 할 수 있는 API를 지원할 수 있다. IoT 서비스 제공자가 그 자신의 ASE-S 기능을 그 IoT 플랫폼의 서비스로서 호스팅하는 경우, 이 서비스 등록 자격증명 및 식별자 부트스트래핑 능력은 이 기능의 일부로서 포함될 수 있다. 그러나, 서비스 제공자가 그 자신의 AES-S 기능을 호스팅하지 않고 대신에 제3자 기능에 의존하면, 서비스 제공자는 먼저 이용가능한 IoT 서비스 등록 식별자들 및 자격증명들의 풀을 구성하기 위해 이 API를 이용하기 전에 그 제3자와의 보안 연관을 확립할 필요가 있을 수 있다.
이 서비스 등록자 및 제공자 보안 연관 능력은 또한 가상화된 IoT 서비스 등록자들이 하나 이상의 IoT 서비스 제공자 플랫폼에 의해 제공되는 서비스들에 대해 등록하는데 요구되는 필요한 서비스 등록 식별자들 및 자격증명들과 부트스트래핑되는 것을 가능하게 할 수 있다. 이러한 부트스트래핑은 가상화된 서비스 등록자에 의해 트리거링되고 개시될 수 있다. 예시적인 실시예에서, 본 명세서에 도입되는 ASE-C 기능은 서비스 제공자의 성공적인 발견 및 양쪽 당사자들로부터의 요건 기준들의 일치와 같은 트리거 이벤트에 기반하여 서비스 등록자를 대신하여 이 부트스트래핑을 자동으로 개시할 수 있다. ASE-S 기능은 ASE-C 기능이 하나 이상의 IoT 서비스 제공자의 IoT 플랫폼의 서비스에 대해 등록하는데 요구되는 필요한 서비스 등록 자격증명들 및 식별자들로 그 자신을 프로그램적으로 부트스트래핑하는 것을 가능하게 할 수 있는 API를 지원할 수 있다. ASE-S가 제3자에 의해 호스팅되는 경우, 보안 연관은 가상화된 IoT 서비스 등록자의 ASE-C와 이 제3자에 의해 호스팅되는 ASE-S 사이에 대신 확립될 수 있다는 점에 유의한다. 다음으로, ASE-S는 자신과 서비스 제공자 플랫폼의 ASE-C 기능들 사이의 보안 연관을 가질 수 있다. ASE-S는 가상화된 IoT 서비스 등록자의 ASE-C와 서비스 제공자 플랫폼의 ASE-C 사이에서 등록 정보를 앞뒤로 전달하기 위해 이 보안 연관을 이용할 수 있다.
서비스 등록자 및 제공자 보안 연관 능력은 가상화된 IoT 서비스 등록자와 IoT 서비스 제공자의 플랫폼 사이의 보안 연관을 생성할 수 있다. ASE-C 기능은 IoT 서비스 등록 식별자 및 자격증명의 성공적인 부트스트랩을, 대응하는 IoT 서비스 제공자의 플랫폼과의 보안 서비스 등록 연관을 자동으로 확립하기 위한 트리거로서 이용할 수 있다. 그렇게 함에 있어서, 대응하는 서비스 등록자 및 제공자는 부트스트래핑된 서비스 등록 자격증명들 및 식별자들에 기반하는 서로 안전하고 신뢰할 수 있는 관계를 형성할 수 있다.
예시적인 실시예에서, 도입된 보안 연관은 ASE-C 기능과 IoT 서비스 제공자의 플랫폼 사이의 단방향 또는 양방향 인증 핸드셰이크를 포함할 수 있다. 이러한 핸드셰이크는 부트스트래핑된 서비스 등록 자격증명 및 식별자에 기반한 보안 문제들을 포함할 수 있다. ASE-C 기능이 보안 연관을 개시할 때, ASE-C는 핸드셰이크의 일부로서 서비스 등록 식별자 및 보안 자격증명들을 전달할 수 있다. 이 서비스 등록 식별자를 수신하면, IoT 서비스 플랫폼은 서비스 등록 식별자 및 대응하는 서비스 등록 자격증명을 찾기 위한 검색을 수행할 수 있다. 플랫폼이 그 자신의 ASE-S 기능을 지원하는 경우, 이 검색은 로컬 요청일 수 있다. 그러나, IoT 서비스 플랫폼이 로컬 기능을 지원하지 않으면, IoT 서비스 플랫폼은 원격 ASE-S 기능에 대한 요청을 개시할 수 있다. 이 요청은 서비스 등록 식별자를 포함할 수 있다. 이 요청에 대한 응답은 ASE-C가 ASE-S 기능에 의해 인증되었는지 그리고 서비스 등록 식별자와 부트스트래핑되었는지의 결정을 포함할 수 있다. 이 응답은 또한 식별자와 연관된 대응하는 서비스 등록 자격증명 및 클라이언트에 관련된 다른 서비스 등록 정보를 포함할 수 있다.
IoT 서비스 플랫폼이 ASE-S 기능으로부터 서비스 등록 자격증명을 수신한 후, IoT 서비스 플랫폼은 보안(예를 들어, 암호화 및 무결성 보호) 챌린지 요청을 생성하고 이를 ASE-C로 회신할 수 있다. 챌린지를 수신할 때, ASE-C는 요청을 해독하고, 원한다면, IoT 서비스 플랫폼에 대한 그 자신의 챌린지 요청을 또한 포함할 수 있는 응답으로 그 챌린지에 응답할 수 있다. 이러한 챌린지 핸드셰이크의 완료 시에, ASE-C와 IoT 서비스 플랫폼 사이의 서비스 등록 연관은 성공적으로 확립될 수 있거나, ASE-C 또는 IoT 서비스 제공자의 플랫폼에 의해 거부될 수 있다.
새로운 서비스 등록 능력은 가상화된 IoT 서비스 등록자가 자동화된 방식으로 IoT 서비스 제공자의 플랫폼에 등록하는 것을 가능하게 하는데 이용될 수 있다. ASE-C 기능이 IoT 서비스 플랫폼과의 서비스 등록 보안 연관을 성공적으로 생성한 후에, ASE-C는 ASE-C가 대신에 작용하고 있는 가상화된 서비스 등록자의 등록을 자동으로 트리거링할 수 있다. 이러한 서비스 등록 능력은 ASE-C 및 ASE-S에 의해 지원될 수 있는 서비스 등록 기능을 포함할 수 있다.
ASE-C 서비스 등록 기능은 가상화된 서비스 등록자들 및 그 가상화된 IoT 디바이스들, 애플리케이션들, 데이터 및 사용자들의 자동화된 등록을 가능하게 할 수 있다. ASE-C는 이러한 등록을 수행하라는 요청들을 ASE-S에 발행할 수 있다. ASE-S는, 다양한 기본 네트워킹 프로토콜들을 이용하여 ASE-C와 ASE-S 사이에 이후 캡슐화되고 교환될 수 있는 서비스 등록 요청들을 ASE-C가 프로그램적으로 발행할 수 있게 하는 서비스 등록 네트워크 API를 지원할 수 있다. 이러한 요청들 내에서, ASE-C는 가상화된 서비스 등록자 및 그 IoT 디바이스들, 애플리케이션들, 데이터 및 사용자들에 관한 다양한 서비스 등록 중심 정보를 포함할 수 있다. ASE-S는 요청 내의 등록 정보를 검사하고 등록이 허용될 것인지에 관한 결정을 행함으로써 이러한 등록 요청들을 처리할 수 있다. 허용되는 경우, ASE-S는 등록 요청에서 제공되는 정보에 대한 적절한 등록자 특정 설정들을 또한 결정할 수 있다. 이러한 등록자 특정 설정들은 또한 등록자의 지정된 요건들에 기반하여 등록자에게 제공되는 각각의 개별 유형의 서비스의 세분성으로 맞춤화될 수 있다.
ASE-C에 의해 ASE-S로 발행되는 등록 요청에 포함될 수 있는 서비스 등록 중심 정보의 유형들은 다음 중 하나 이상을 포함할 수 있지만, 이에 제한되지는 않는다:
ㆍ 요청을 주어진 서비스 등록자 및 서비스 등록과 연관시키는 서비스 등록 식별자. 이러한 식별자는 ASE-C가 ASE-S와 부트스트래핑하는 경우에 ASE-S로부터 획득될 수 있다;
ㆍ 등록을 요청하는 서비스 등록자에 관한 정보(예를 들어, 아이덴티티의 증명). 이러한 정보는 ASE-C가 ASE-S와 부트스트래핑하는 경우에 ASE-S로부터 획득될 수 있다. 대안적으로, 이것은 등록자에게 미리 프로비저닝될 수 있다;
ㆍ 서비스 등록자가 등록을 요청하고 있는 각각의 IoT 디바이스에 관한 정보. IoT 디바이스에 대한 정보의 유형은 다음을 포함할 수 있지만, 이에 제한되는 것은 아니다:
디바이스 식별자, 제조자, 메이크, 모델, 일련 번호, 네트워크 어드레스, 펌웨어/OS 버전, 디바이스 상에 호스팅되는 애플리케이션 SW 등; 및
누가, 언제, 어디서, 그리고 어떻게 디바이스들이 액세스될 수 있는지를 지정하는 디바이스들에 대한 정책들;
ㆍ 서비스 등록자가 등록을 요청하고 있는 각각의 IoT 애플리케이션에 관한 정보. IoT 애플리케이션에 대한 정보의 유형은 다음을 포함할 수 있지만, 이에 제한되는 것은 아니다:
애플리케이션이 호스팅되는 디바이스 인스턴스들 또는 디바이스 유형들의 리스트. 이러한 리스트는 IMEI, MAC ID, 외부 ID, IP 어드레스, 또는 IMSI와 같은 디바이스 식별자들을 포함할 수 있다;
데이터 또는 정보 모델, 시맨틱 온톨로지 모델, 콘텐츠 직렬화 포맷 또는 애플리케이션에 의해 지원되는 전송 프로토콜들;
애플리케이션이 서비스에 대한 요청들을 생성하는 레이트(예를 들어, 센서 보고 레이트) 및 요청마다의 데이터 크기/대역폭 요건들;
애플리케이션이 플랫폼으로부터 요청들을 수락할 수 있는 최대 레이트(예를 들어, 통지 레이트);
애플리케이션의 휴면 스케줄; 및
누가, 언제, 어디서, 그리고 어떻게 애플리케이션들이 액세스될 수 있는지를 지정하는 애플리케이션들에 대한 정책들;
ㆍ 서비스 등록자가 서비스 제공자의 플랫폼에 등록할 것을 요청하고 있는 각각의 IoT 데이터 세트에 관한 정보. IoT 데이터 세트에 대한 정보의 유형은 다음을 포함할 수 있지만, 이에 제한되는 것은 아니다:
데이터 세트의 유형(예를 들어, 주차 차고 데이터 등);
정보 모델, 시맨틱 온톨로지 모델, 데이터 세트의 콘텐츠 직렬화 포맷;
세트 내의 개별 데이터 인스턴스마다의 총 크기 및/또는 평균 크기와 같은 데이터 세트의 크기;
누가 데이터 세트에 액세스하도록 허용되는지, 어떤 동작들이 그들이 수행하도록 허용되는지, 언제 그리고 어느 위치들로부터, 어느 시간에 그리고 얼마나 오랫동안, 또는 어떤 디바이스들 또는 디바이스 유형들에 의해 그들이 데이터에 액세스하도록 허용되는지를 지정하는 정책들.
데이터 세트가 현재 호스팅되는 곳의 네트워크 어드레스(들);
등록자가 서비스 플랫폼이 데이터 세트를 가져오게 하거나 또는 대신에 다른 곳에 호스팅되는 데이터 세트에 링크하게 하기를 원하는지의 여부의 표시. 이 표시에는 데이터를 어떻게 가져올지의 명령어들이 포함될 수 있다. 이것은, 데이터를 가져올 리소스들의 유형들, 리소스들의 계층구조 또는 각각의 리소스의 스키마 정의를 포함할 수 있음; 및
데이터 세트와 연관된 프라이버시 정책들(즉, 데이터가 제3자들에게 노출될 수 있는지 여부);
ㆍ 선택된 서비스 등록 선택권들 및 그 원하는 설정들, 예컨대 원하는 데이터 저장 용량, 월마다의 원하는 통지들의 수 등의 리스트;
ㆍ 서비스 등록을 따를 수 있는 방식으로 IoT 서비스 플랫폼에 의해 제공되는 서비스들에 액세스하기 위한 승인 및 동의;
ㆍ 제안된 서비스 등록 유효기간;
ㆍ 서비스 등록자의 IoT 디바이스들, 애플리케이션들 및/또는 데이터 세트들 및 이들의 각각의 권한들에 대한 액세스가 허용될 수 있는 지정된 허가된 사용자들의 리스트,
여기서, 사용자들의 리스트는 IoT 서비스 등록자 ID들 또는 IoT 서비스 등록 ID들의 리스트로서 표현될 수 있고, 서비스 등록자 ID는 등록자의 고유 ID이고, 서비스 등록 ID는 등록자와 서비스 제공자 사이의 등록 관계를 식별하는 ID이다. 일부 예시적인 실시예들에서, 이러한 ID들은 서로 등가일 수 있다. 그러나, 다른 예시적인 실시예들에서, 등록자가 단일 제공자와의 복수의 활성 서비스 등록들을 갖는 것이 가능할 수 있으며;
어떤, 언제 그리고 어디서 사용자들이 어떤 IoT 디바이스들, 애플리케이션들 또는 데이터에 대한 동작들을 수행할 수 있는지를 제한하는 액세스 제어 규칙들을 지정하는 사용자들에 대한 액세스 제어 권한들;
ㆍ 언제 서비스 등록자가 특정 서비스들에 액세스하려고 요청할 수 있는지의 원하는 또는 요구되는 서비스 스케줄; 및
ㆍ ASE-S가 상태 업데이트들 및 통지들을 ASE-C에 전송할 수 있는 서비스 등록자에 대한 접촉 정보(이메일, 텍스트 등)이며, 이것은 이후 서비스 등록자에게의 경보들로 전환될 수 있다.
다른 예시적인 실시예에서, 서비스 등록자는 서비스 등록자의 등록 시에 선행 방식으로 한꺼번에 모든 IoT 디바이스들, 애플리케이션들, 데이터 세트들 및 사용자들 모두에 관한 그 등록 정보 모두를 지정하도록 요구되거나 제한되지 않을 수 있다. 오히려, IoT 디바이스들, 애플리케이션 데이터 세트들 및 사용자들에 대한 추가적인 등록 정보는 개별 등록자의 디바이스, 애플리케이션, 데이터 세트 또는 사용자가 등록될 때와 같이 나중에 지정될 수 있다. 예를 들어, 사용자가 등록될 때, 그 디바이스들, 애플리케이션들 및 데이터가 등록될 수 있고, 디바이스가 등록될 때, 그 애플리케이션 및 데이터가 등록될 수 있다. 이것은 등록 프로세스에 대한 확장성뿐만 아니라 신장성을 제공한다.
ASE-S로부터 ASE-C로 되돌아가는 등록 응답에 포함될 수 있는 서비스 등록 중심 정보의 유형들은 다음 중 하나 이상을 포함할 수 있지만, 이에 제한되지 않는다:
ㆍ 서비스 등록이 성공적으로 완료되었는지 여부를 나타내는 전체 등록 상태. 등록이 성공적이지 않았다면 대응하는 이유;
ㆍ 성공적으로 및/또는 성공적이지 않게 등록된 IoT 디바이스들, 애플리케이션들, 데이터 세트들 또는 허가된 사용자들의 리스트. 특정 디바이스, 애플리케이션, 데이터 세트 또는 허가된 사용자의 등록이 성공적이지 않은 경우에는, 그 대응하는 이유;
ㆍ 그 IoT 디바이스들, 애플리케이션들, 데이터 세트들, 및 사용자들 사이의 수락된 서비스 등록자 관계들의 표시. 예를 들어, 서비스 제공자는 주어진 디바이스에 대한 특정 애플리케이션 또는 데이터 포맷을 지원하지 않을 수 있다;
ㆍ 서비스 등록 유효기간. 이 기간이 만료되기 전에 재등록이 수행되지 않으면, 서비스 등록은 중단될 수 있다;
ㆍ 등록자가 서비스 플랫폼, 예컨대 등록/부트스트랩 서버 PoC, 허가 서버 PoC, DM 서버 PoC와 상호작용하는데 이용할 수 있는 서비스 제공자 기능(들)에 관한 정보;
ㆍ 서비스 등록자 및 그 IoT 엔티티들이 IoT 서비스 플랫폼과 통신하는데 이용할 수 있는 프로토콜 관련 요건들의 리스트; 및
ㆍ (예를 들어, 서비스 등록자가 특정 서비스들을 이용하는 것이 허용될 때의) 서비스 스케줄 정보.
도입된 자동화된 서비스 등록(ASE) 기능의 예시적인 oneM2M 실시예들이 이하에서 설명된다. 새로운 ASE 능력들은 oneM2M 서비스 가입자(즉, 등록자)의 가상화, oneM2M 서비스 가입자에 의한 하나 이상의 이용가능한 oneM2M 서비스 제공자의 발견, 및 하나 이상의 oneM2M 서비스 제공자에 대한 oneM2M 서비스 가입자의 등록을 가능하게 하는데 이용될 수 있다.
oneM2M 아키텍처 내에서, 본 명세서에 설명된 ASE-S 능력들은, 도 12에 도시된 바와 같이, 공통 서비스 엔티티(CSE)의 새로운 공통 서비스 기능(CSF)으로서 구현될 수 있다. 이러한 새로운 CSF는 oneM2M 시스템에서의 ASE-S 지원을 가능하게 하는데 이용될 수 있다. 대안적으로, ASE-S는 또한 기존 oneM2M CSF(예를 들어, 보안 CSF)의 능력으로서 또는 oneM2M 정의된 M2M 등록 기능(MEF) 또는 M2M 인증 기능(MAF)의 능력으로서 구현될 수 있다.
ASE-C 기능은 oneM2M 애플리케이션 엔티티(AE) 및 oneM2M CSE에 의해 지원될 수 있다. 예시적인 실시예에서, AE는 ASE-C를 통해 자동화된 등록 요청들을 개시하고 이러한 요청들을 MEF, MAF 또는 CSE에 의해 호스팅되는 ASE-S로 전송할 수 있다.
현재, oneM2M은 등록자를 일반적인 애플리케이션(즉, oneM2M AE) 또는 일반적인 디바이스(즉, oneM2M 노드)로서 정의한다. 등록자가 하나 이상의 IoT 디바이스, IoT 애플리케이션, IoT 데이터 세트 및/또는 허가된 사용자를 통한 소유권 및/또는 관리 권한들을 갖는 oneM2M 서비스 가입자일 수 있게 하기 위해 oneM2M 등록 절차에 대한 향상들이 본 명세서에 설명된다. 예시적인 실시예에서, 본 명세서에 설명된 바와 같은, ASE의 서비스 등록자 가상화 능력은, oneM2M 서비스 가입자를 서비스 가입자의 아이덴티티 및 그 IoT 디바이스들, 애플리케이션들, 데이터 세트들, 허가된 사용자들 및 서비스 등록 선호들 및 정책들에 대한 지식을 갖는 oneM2M AE의 전문화된 유형으로 가상화하는데 이용될 수 있다.
또한, 가상화된 서비스 제공자는 서비스 제공자의 아이덴티티에 대한 지식, 서비스 제공자의 등록 옵션들에 관한 정보, 및 서비스 제공자를 대신하여 가상화된 서비스 가입자들의 등록을 관리하는 권한을 갖는 oneM2M 등록 기능(MEF), oneM2M 인증 기능(MAF) 또는 oneM2M CSE일 수 있다.
소프트웨어 가상화된 oneM2M 서비스 가입자는 서비스 제공자뿐만 아니라 가입자의 개별 IoT 디바이스들, IoT 애플리케이션들, IoT 데이터 세트들 및/또는 허가된 사용자들에게 자신을 등록하기 위해 향상된 서비스 등록 절차를 이용할 수 있다. 이것은 개별적으로 등록될 각각의 oneM2M 애플리케이션(AE) 및 디바이스(노드)를 요구하는 기존 oneM2M 등록 프로세스의 자동화 및 간략화를 낳는 단일 등록 절차에서 수행될 수 있다. 추가 이점은 서비스 가입자가 그 IoT 디바이스들, IoT 애플리케이션들, IoT 데이터 세트들 및/또는 허가된 사용자들과의 연관을 갖는 oneM2M 시스템에서 가상화된 엔티티로서 표현될 수 있다는 것일 수 있다. 기존 oneM2M 아키텍처에서는, 서비스 가입자 자신에 대한 인식 또는 지원이 존재하지 않고, 개별 IoT 애플리케이션들 및 디바이스들에 대한 지원만이 존재한다. 이러한 능력을 도입하는 것은 oneM2M 서비스 계층이 서비스 가입자(예를 들어, 자동 등록 서비스 가입자들 및 그 등록된 디바이스들 및 애플리케이션들뿐만 아니라 이들 엔티티들의 액세스 제어 권한들의 자동 구성)에 대한 추가적인 유형들의 자동화된 등록 서비스들을 제공하는 것을 가능하게 할 수 있다.
oneM2M CSE, MEF 또는 MAF는 본 명세서에 도입된 ASE의 서비스 등록 공개, 질의 및 발견 서버 능력을 지원할 수 있다. 리소스 또는 속성은 대응하는 서비스 제공자가 지원하는 서비스 등록 옵션들의 유형들의 설명을 공개하기 위해 CSE, MEF 또는 MAF에 의해 이용될 수 있다. 이 설명은 ASE의 서비스 등록 공개, 질의 및 발견 서버 능력에 의해 지원되는 정보의 유형들 중 하나 이상을 포함할 수 있다.
예시적인 실시예에서, 서비스 등록 옵션들은 리소스 속성에 저장될 수 있다. 예를 들어, 이것은 도 13에 도시된 바와 같이 <CSEBase>, <remoteCSE>, <MEFBase> 또는 <MAFBase>와 같은 oneM2M 정의된 리소스 유형들 중 하나 이상의 enrollmentOptions 속성일 수 있다.
대안적으로 또는 추가적으로, 이러한 정보는 새로운 oneM2M 정의된 리소스 유형에 저장될 수 있다. 예를 들어, 이 정보는 도 14에 도시된 바와 같이 <CSEBase>, <remoteCSE>, <MEFBase> 또는 <MAFBase>와 같은 oneM2M 정의된 리소스 유형들 중 하나 이상의 새로운 enrollmentOptions 자식 리소스에 저장될 수 있다.
이 새로운 속성 또는 리소스는 도 15에 도시된 바와 같이 oneM2M 서비스 제공자 등록 옵션들을 공개하는데 이용될 수 있다.
단계 1에서, oneM2M 서비스 제공자는 그것이 지원하는 서비스 등록 옵션들을 정의할 수 있다.
단계 2에서, oneM2M 서비스 제공자 AE는 지원되는 서비스 등록 옵션들을 그 서비스 플랫폼 내의 MEF, MAF 또는 CSE에 공개할 수 있다. 이 공개는 서비스 등록 옵션들을 이용하여 MEF, MAF 또는 CSE 상에서 호스팅되는 리소스 또는 속성을 생성하거나 업데이트하는 것을 수반할 수 있다.
단계 3에서, MEF, MAF 또는 CSE는 서비스 등록 옵션들을 이용하여 요청된 리소스를 생성하거나 업데이트함으로써 그 요청을 서비스할 수 있다.
단계 4에서, MEF, MAF 또는 CSE는 요청을 개시한 서비스 제공자 AE에게 응답을 회신할 수 있다. 요청이 성공적이었는지 여부를 나타내는 상태가 응답에 포함될 수 있다.
일단 공개되면, enrollmentOptions는 이후 도 16에 도시된 바와 같이 oneM2M 서비스 가입자들의 요건들에 맞는 서비스 등록 옵션들을 제공하는 oneM2M 서비스 제공자를 찾으려고 시도할 수 있는 잠재적 oneM2M 서비스 가입자들에 의해 질의되고 발견될 수 있다.
단계 1에서, oneM2M 서비스 가입자는 검색하고 있는 서비스 제공자의 유형을 정의할 수 있는 그 서비스 등록 요건을 정의할 수 있다.
단계 2에서, oneM2M 서비스 가입자 AE는 가입자가 요구하는 요건들을 지원하는 oneM2M 서비스 제공자를 발견하기 위해 질의를 발행할 수 있다. 이러한 질의는 특정 MEF, MAF 또는 CSE를 목표로 할 수 있다. 대안적으로, 질의는 주어진 도메인 또는 위치에서 이용가능한 서비스 제공자들을 발견하기 위해 브로드캐스팅 또는 멀티캐스팅될 수 있다.
단계 3에서, MEF, MAF 또는 CSE는 질의를 처리할 수 있다. 질의를 처리하기 위해, MEF, MAF 또는 CSE는 질의 조건들을 분석하여, 그것이 나타내는 서비스 제공자(들)가 기준들과 일치하는지를 결정할 수 있다. 대안적으로 또는 추가적으로, MEF, MAF 또는 CSE는 등록 옵션들의 완전한 리스트를 제공하고 AE가 AE에 대해 어떤 관련 정보가 중요한지를 결정하게 할 수 있다.
단계 4에서, MEF, MAF 또는 CSE는 질의를 개시한 서비스 가입자 AE에게 응답을 회신할 수 있다. 발견이 성공적으로 처리되었는지 여부 그리고 임의의 일치하는 서비스 제공자(들)가 발견된 경우를 나타내는 상태가 응답에 포함될 수 있다. 또한, 서비스 제공자 자격증명(들)(예를 들어, 공개 증명서)이 또한 응답에 포함될 수 있다.
oneM2M 서비스 등록 절차에 대한 도입된 향상들을 가능하게 하기 위해, 가상화된 서비스 가입자(즉, 서비스 가입자를 나타내는 oneM2M AE)와 가상화된 서비스 제공자(즉, 서비스 제공자를 나타내는 oneM2M MEF, MAF 또는 CSE) 사이에 확립될 수 있는 새로운 유형의 oneM2M 보안 연관이 도입될 수 있다. 이러한 새로운 유형의 oneM2M 보안 연관은 가상화된 서비스 가입자와 가상화된 서비스 제공자 사이의 신뢰의 확립을 가능하게 할 수 있다. 이러한 신뢰는 가상화된 서비스 제공자가 진정한 서비스 제공자이고, 가입자가 발견하고 등록하기로 결정한 가상화된 서비스 제공자인 것을 인증하는 가상화된 서비스 가입자에 의해 확립될 수 있다. 유사하게, 서비스 제공자는 가입자의 아이덴티티가 진짜이고 신뢰될 수 있도록 보장하기 위해 서비스 가입자를 인증할 수 있다. 가상화된 서비스 가입자와 서비스 제공자 사이의 이러한 새로운 oneM2M 보안 연관을 추가로 가능하게 하기 위해, 몇몇의 ASE 정의된 특징들의 예시적인 실시예들이 oneM2M 아키텍처 내에 도입된다.
oneM2M 서비스 가입자 및 oneM2M 서비스 제공자가 서로 인증하고 신뢰할 수 있게 하는 하나의 이러한 특징은 2개의 새로운 oneM2M 정의된 자격증명, 즉 oneM2M 서비스 가입자 자격증명 및 oneM2M 서비스 제공자 자격증명의 도입이다. 예시적인 실시예에서, 이러한 자격증명들은 가상화된 서비스 가입자 AE와 가상화된 서비스 제공자 MEF, MAF 또는 CSE 사이에서 프로비저닝되고 공유될 수 있는 사전 공유된 대칭 키들의 형태를 취할 수 있다. 다른 예시적인 실시예에서, oneM2M 서비스 가입자에 대해 새로운 oneM2M 증명서 프로파일이 도입될 수 있고, 다른 oneM2M 증명서 프로파일이 oneM2M 서비스 제공자에 대해 도입될 수 있다. oneM2M 서비스 가입자 증명서 프로파일에서, oneM2M 서비스 가입 식별자는 그 증명서에 포함될 수 있고, 이는 그 식별자가 oneM2M 서비스 가입자 증명서가 될 수 있게 한다. 예를 들어, oneM2M 서비스 가입 식별자는 서비스 가입자의 SSL 증명서의 subjectAltName 확장 필드 내에 포함될 수 있다. 마찬가지로, oneM2M 서비스 제공자 증명서 프로파일에서, oneM2M 서비스 제공자 식별자는 증명서 내에 구성될 수 있고, 이는 그 식별자가 oneM2M 서비스 제공자 증명서가 될 수 있게 한다.
다른 특징은 가상화된 서비스 가입자 AE 및 가상화된 서비스 제공자의 MEF, MAF 또는 CSE를 서비스 가입자 및 제공자 보안 연관의 확립을 위한 전제 조건들로서 필요한 서비스 가입자 및 제공자 식별자들 및 자격증명들과 원격적으로 부트스트래핑하고 또한 이를 관리하기 위한 API의 도입이다.
oneM2M 서비스 제공자가 하나 이상의 등록 자격증명의 구성을 관리하는 것을 허용하기 위해 RESTful API가 도 17 및 도 18에 도입된다. 서비스 제공자는 이 API를 이용하여 oneM2M MEF, MAF 또는 CSE 내에서 등록 자격증명들의 풀을 생성할 수 있다. 자격증명들의 풀이 생성된 후, MEF, MAF 또는 CSE는 서비스 제공자를 대신하여 등록자들에의 자격증명들의 배포를 관리할 뿐만 아니라 자격증명들의 유효기간 관리(예를 들어, 만료 시간들의 관리 등)를 행할 수 있다. API는, oneM2M 엔티티가 이들 API 리소스들을 호스팅하는 것에 따라, <MEFBase>, <MAFBase> 또는 <CSEBase>와 같은 기본 리소스를 포함할 수 있다. 각각의 oneM2M 서비스 제공자는 그 자신의 리소스(즉, <SPBase>)를 API의 기본 리소스 아래의 자식 리소스로서 가질 수 있다. <SPBase> 리소스는 서비스 제공자 식별자로 구성된 속성과 같은 속성들을 가질 수 있다. <SPBase> 리소스는 또한 서비스 제공자가 잠재적 등록자들에 대해 생성하는 풀 자격증명들 내의 각각의 자격증명에 대한 리소스와 같은 자식 리소스들을 가질 수 있다. 풀 내의 각각의 자격증명은 그 자신의 리소스(즉, <credentialInfo>)를 가질 수 있다. 이러한 리소스는 주어진 자격증명의 속성들을 포함할 수 있다. 하나의 속성은 지원되는 oneM2M 증명서 또는 키 유형으로 구성될 수 있는 자격증명의 유형(즉, credentialType)일 수 있다. 대안적으로, 자격증명들을 보다 사적이고 안전하게 유지하기 위해, 자격증명들이 숨겨져 유지되고 개별 리소스들에 저장되지 않을 수 있다. 대신에, 리소스(들)는 자격증명의 생성 및 부트스트래핑을 허용하기 위한 엔트리 포인트(예를 들어, 가상 리소스)로서 정의될 수 있다. 이러한 더 많은 보안 옵션은 이하의 도 17 및 도 18에 도시되어 있지 않지만, <credentialInfo> 리소스들을 가상 리소스로 대체하는 것을 포함할 수 있다는 점에 유의한다. 다른 속성들은 다음 중 하나 이상을 포함할 수 있다: 자격증명이 등록자에게 할당되었는지 여부를 나타내기 위해, 할당되지 않거나 할당된 값과 같은 값으로 구성될 수 있는 자격증명의 상태(즉, credentialState); 자격증명의 고유 식별자로 구성될 수 있는 자격증명의 식별자(즉, credentialID); 등록자에 대한 oneM2M 준수 키 또는 증명서로 구성될 수 있는 자격증명 자체(즉, credential); 및 자격증명이 할당된 엔티티의 식별자로 구성될 수 있는 자격증명의 양수인(즉, assignee).
도 18은 서비스 가입자 자격증명들을 생성하기 위한 예시적인 절차를 도시한다.
단계 1에서, oneM2M 서비스 제공자는 서비스 가입자 자격증명들 및 식별자들의 풀을 생성할 수 있다.
단계 2에서, 풀 내의 각각의 자격증명의 경우, oneM2M 서비스 제공자는 <credentialInfo> 리소스를 생성하기 위해 그 서비스 플랫폼 내의 MEF, MAF 또는 CSE에 생성 요청을 발행할 수 있다.
단계 3에서, MEF, MAF 또는 CSE는 서비스 제공자에 대한 <credentialInfo> 리소스를 생성함으로써 이 요청을 서비스할 수 있다.
단계 4에서, MEF, MAF 또는 CSE는 요청을 개시한 서비스 제공자 AE에게 응답을 회신할 수 있다. 요청이 성공적이었는지 여부를 나타내는 상태가 그 응답에 포함될 수 있다.
추가적인 RESTful API가 도 19 및 도 20에 도입되어, 가상화된 서비스 가입자 AE가 그 자신과 서비스 제공자 간의 보안 연관을 확립하는데 요구되는 필요한 서비스 가입자 및 제공자 식별자들 및 자격증명들과 안전하게 부트스트래핑될 수 있게 한다. 이 API는 oneM2M MEF, MAF 또는 CSE에 의해 지원되는 자격증명-프로비저닝 특징을 포함할 수 있다. 이러한 프로비저닝 특징은 가상화된 서비스 가입자 AE가 MEF, MAF 또는 CSE에 서비스 가입자 자격증명-프로비저닝 요청을 발행하는 것을 허용할 수 있다. 이 API를 이용하기 위해, 가상화된 서비스 가입자 AE는 먼저 미리 프로비저닝된 부트스트래핑 자격증명(예를 들어, 제조자 등에 의해 미리 프로비저닝됨)을 이용하여 MEF, MAF 또는 CSE와의 보안 연관을 확립하도록 요구될 수 있다. API는 가상화된 서비스 가입자 AE에 의해 부트스트랩 요청들을 목표로 하는데 이용될 수 있는 가상 리소스(즉, <bootstrap>)를 지원할 수 있다. 요청 내에서, 가상화된 서비스 가입자 AE는 등록에 관심이 있는 서비스 제공자의 식별자와 같은 정보를 포함할 수 있다. 이 요청을 수신할 때, MEF, MAF 또는 CSE는 목표로 한 서비스 제공자가 MEF, MAF 또는 CSE가 대신에 동작할 수 있는 것인지를 결정할 수 있다. 이러한 경우, MEF, MAF 또는 CSE는 목표로 한 서비스 제공자에 대한 (존재하는 경우의) 이용가능한 자격증명들의 풀로부터의 이용가능한 자격증명 및 식별자를 할당할 수 있다. MEF, MAF 또는 CSE는 이후 이 식별자 및 자격증명을 또한 요구될 수 있는 임의의 서비스 제공자 자격증명(예를 들어, 서비스 제공자의 공개 키/증명서)과 함께 서비스 가입자에게 회신할 수 있다.
도 20은 서비스 가입자가 자격증명들을 부트스트래핑하기 위한 예시적인 절차를 도시한다.
단계 1에서, oneM2M 서비스 가입자는 서비스 가입자 자격증명들을 부트스트래핑하기를 원하는 서비스 제공자를 결정할 수 있다. 이 결정은 서비스 가입자가 수행하는 서비스 제공자 발견 절차의 결과일 수 있다.
단계 2에서, oneM2M 서비스 가입자 AE는 oneM2M 서비스 제공자에게 부트스트랩 요청을 발행할 수 있다. 이 요청은 서비스 제공자와 연관되고 서비스 가입자가 수행할 수 있는 서비스 제공자 발견 절차 동안 발견된 특정한 MEF, MAF 또는 CSE를 목표로 할 수 있다. 대안적으로, 이 요청은 주어진 도메인 또는 위치에서 이용가능한 서비스 제공자들에게 브로드캐스팅 또는 멀티캐스팅될 수 있다. 이 부트스트래핑 프로세스를 보안하기 위해, 부트스트래핑 자격증명이 서비스 가입자 AE에 의해 요구될 수 있다. 예시적인 실시예에서, 부트스트래핑 자격증명은 서비스 제공자 발견 절차 동안 획득될 수 있다.
단계 3에서, MEF, MAF 또는 CSE는 서비스 가입자 AE를 인증할 수 있고, 그 후 부트스트랩 요청을 서비스할 수 있다. 요청을 처리하기 위해, MEF, MAF 또는 CSE는 요청 내의 지정된 서비스 제공자 식별자를 분석하여 그것이 서비스 제공자를 대신하여 부트스트랩 요청들을 서비스할 수 있는 제공자인지를 결정할 수 있다.
단계 4에서, MEF, MAF 또는 CSE는 부트스트랩 요청을 개시한 서비스 가입자 AE에게 응답을 회신할 수 있다. 부트스트랩이 성공적으로 처리되었는지를 나타내는 상태가 그 응답에 포함될 수 있다. 이러한 경우, 자격증명 정보가 또한 그 응답에 포함될 수 있으며, 이는 서비스 가입자 자격증명 및 식별자 및 서비스 제공자 자격증명 정보(예를 들어, 서비스 제공자의 공개 키/증명서)를 포함할 수 있다.
oneM2M 서비스 가입자와 제공자 간의 보안 연관이 성공적으로 확립된 후에, 보안 연관은 이후 예비되고 oneM2M 서비스 가입자(또는 그 허가된 사용자들 중 한 명)와 서비스 제공자 간에서만 수행되도록 허용될 수 있는 권한 있는 등록 동작들의 세트를 수행하는데 이용될 수 있다. 동작들은 이 확립된 신뢰 있는 보안 연관 위에서 안전하게 수행될 수 있다.
서비스 가입자 등록은 가상화된 oneM2M 서비스 가입자 AE에 의해 개시될 수 있다. 이 요청은 본 명세서에 도입된 바와 같은 하나 이상의 유형의 정보를 포함할 수 있다. 이러한 정보의 교환은 MEF, MAF 또는 CSE에 새로운 oneM2M 정의된 리소스들 및/또는 속성들에 대한 예시적인 실시예들을 추가함으로써 가능해 질 수 있다. 가상화된 서비스 가입자 AE는 차례로 이들 새롭게 정의된 리소스들/속성들을 그 서비스 가입자 등록 프로세스의 일부로서 생성 또는 업데이트할 수 있다. 새로운 리소스들, 속성들 및 절차가 도 21 및 도 22에 도시되어 있다.
서비스 가입자는 MEF, MAF 또는 CSE 상에 등록 정보 리소스(예를 들어, <mefClientReg>, <mafClientReg>, <serviceSubscriptionReg>)를 생성함으로써 등록을 개시할 수 있다. 이 리소스의 생성은 MEF, MAF 또는 CSE가 요청을 서비스 가입자 등록 요청으로서 처리하도록 트리거링할 수 있다. 이 리소스는 서비스 가입자가 서비스 제공자에의 등록에 포함시키고자 하는 그 자신(즉, enrolleeInfo), 그 IoT 디바이스들(즉, deviceInfo), 그 애플리케이션들(즉, appInfo), 그 데이터(즉, dataInfo) 및 그 사용자들(즉, userInfo)에 관한 정보로 구성할 수 있는 몇몇 속성들을 지원할 수 있다. 이 리소스는 또한 서비스 가입에 대한 식별자로 구성될 수 있는 속성을 포함할 수 있다. 이 속성은 등록 요청을 성공적으로 처리하고 서비스 가입에 대한 식별자를 생성한 결과로서 MEF, MAF 또는 CSE에 의해 구성될 수 있다.
도 22는 서비스 가입자가 서비스 제공자에게 등록하기 위한 예시적인 절차를 도시한다.
단계 1에서, oneM2M 서비스 가입자는 주어진 서비스 제공자에게 등록할 IoT 디바이스들, 애플리케이션들, 데이터 및 사용자들을 결정할 수 있다. 이 결정은 본 명세서에 설명된 바와 같은 ASE의 서비스 등록자 가상화 능력의 도입된 기능의 적어도 일부를 이용하여 이루어질 수 있다.
단계 2에서, oneM2M 서비스 가입자 AE는 oneM2M 서비스 제공자에게 등록 요청을 발행할 수 있다. 이 요청은 등록 리소스의 생성일 수 있다. 이 리소스는 등록하기를 원하는 서비스 가입자의 디바이스들, 애플리케이션들, 데이터 및 사용자들에 관련된 등록 정보를 포함할 수 있다. 이 요청은 발견된 서비스 제공자와 연관되고 보안 연관이 확립된 특정한 MEF, MAF 또는 CSE를 목표로 할 수 있다.
단계 3에서, MEF, MAF 또는 CSE는 이 등록 요청을 서비스할 수 있다. 요청을 처리하기 위해, MEF, MAF 또는 CSE는 서비스 제공자가 MEF, MAF 또는 CSE가 대신에 서비스 등록 요청들을 서비스할 수 있는 제공자인지를 결정하기 위해 요청에서 지정된 서비스 제공자 식별자를 분석할 수 있다. MEF, MAF 또는 CSE는 본 명세서에 설명된 ASE의 서비스 등록 능력에 의해 도입된 방식으로 이 요청을 처리할 수 있다. 이 처리는 이하에 소개된 진보된 특징들 중 일부를 또한 포함할 수 있는데, 이는 다음을 포함할 수 있다: 등록자의 IN-CSE 또는 등록관 CSE 상의 oneM2M 서비스 가입 관련 리소스들의 자동 생성(예를 들어, <m2mServiceSubscriptionProfile>, <serviceSubscribedNode>, <serviceSubscribedAppRule>, <serviceSubscribedUser>, <serviceSubscribedDataRule>); 등록자에 대한 액세스 제어 정책들의 자동 생성(예를 들어, <accessControlPolicy> 리소스들의 생성 및 accessControlPolicyID들의 구성); 및 등록자의 IoT 데이터 세트들의 가져오기 및 저장을 위한 데이터 제어 정책들 및 리소스들의 자동 생성.
단계 4에서, MEF, MAF 또는 CSE는 등록 요청을 개시한 서비스 가입자 AE에게 응답을 회신할 수 있다. 등록이 성공적으로 처리되었는지를 나타내는 상태가 그 응답에 포함될 수 있다.
다른 예시적인 실시예에서, 가상화된 oneM2M 서비스 가입자 AE로부터 수신되었을 수 있는 등록 요청을 처리하는 oneM2M 서비스 제공자의 MEF, MAF 또는 CSE는 본 명세서에서 설명되는 ASE의 서비스 등록 능력에 의해 도입된 진보된 동작들 중 하나 이상을 트리거링하고 수행할 수 있다.
예시적인 실시예에서, 서비스 제공자의 MEF, MAF 또는 CSE는 서비스 제공자를 대신하여, 등록을 허가하고 등록된 서비스 가입자의 IoT 디바이스들, 애플리케이션들, 데이터에 대한 액세스를 허가하기 위해 등록관 CSE에 의해 이용될 수 있는 리소스들의 컬렉션을 자동 생성할 수 있다. 이러한 리소스들은 시스템에 액세스하도록 허용될 수 있는 디바이스들, 애플리케이션들 및 데이터의 식별자들뿐만 아니라 디바이스들, 애플리케이션들 및 데이터에 액세스하도록 허용될 수 있는 엔티티들의 식별자들과 같은 정보로 구성될 수 있다. MEF, MAF 또는 CSE에 의한 등록 시에 자동 생성될 수 있는 허가 관련 리소스들의 세트는 일부 기존 oneM2M 리소스 유형들뿐만 아니라 본 명세서에 도입된 일부 새로운 리소스 유형들을 포함할 수 있다. 기존 리소스들의 세트는 <m2mServiceSubscriptionProfile>, <serviceSubscribedNode>, <serviceSubscribedAppRule> 및 <accessControlPolicy>를 포함할 수 있다. 새로운 리소스들의 세트는 <serviceSubscribedUser>, <serviceSubscribedDataRule> 및 <dataControlPolicy>를 포함할 수 있다. 이러한 리소스들 각각의 예들이 이하의 대응하는 도면에 도시된다. 기존 oneM2M 리소스 유형들의 경우, 새로 도입되거나 수정된 속성들만이 도시되어 있다는 점에 유의한다. 이러한 리소스들의 자동 생성은 서비스 가입자 AE의 성공적인 등록에 의해 트리거링될 수 있다. 이러한 리소스들의 속성들 내에 구성된 정보는 그 등록 요청(들)에서 서비스 가입자에 의해 제공되는 정보 및/또는 서비스 제공자에 의해 MEF, MAF 또는 CSE 내에 구성된 정책들에 의존할 수 있다.
도 23은 서비스 가입자가 성공적으로 등록할 때 자동 생성될 수 있는 향상된 <m2mServiceSubscriptionProfile> 리소스를 도시한다. 새로운 <serviceSubscriptionReg> 리소스 내의 정보는 대응하는 <m2mServiceSubscriptionProfile> 리소스를 자동 생성하는데 이용될 수 있다. 새로운 serviceSubscriptionID 속성이 도입되어 가입을 고유하게 식별하고 추적한다. 등록자가 그 등록 요청에서 정의할 수 있는 권한들로 구성될 수 있는 <accessControlPolicy> 리소스에 대한 링크로 구성될 수 있는 defaultACPID 속성이 도입된다. 이러한 권한들은 서비스 가입 하에 등록된 IoT 디바이스들, 애플리케이션들 및 데이터에 대한 디폴트들로서 역할할 수 있다. 이러한 디폴트들을 무시하기 위해 추가적인 권한들이 정의될 수 있다. <serviceSubscribedUser> 자식 리소스가 도입되며, 이는 이 서비스 가입과 연관된 허가된 사용자에 대한 정보를 포함할 수 있다. 이 리소스의 인스턴스는 각각의 허가된 사용자에 대해 생성될 수 있다.
도 24는 서비스 가입자가 IoT 디바이스를 성공적으로 등록할 때 자동 생성될 수 있는 향상된 <serviceSubscribedNode> 리소스를 도시한다. 등록자가 그 등록 요청에서 정의할 수 있는 권한들로 구성될 수 있는 <accessControlPolicy> 리소스에 대한 링크로 구성될 수 있는 defaultACPID 속성이 도입된다. 이러한 권한들은 이 특정 노드와 연관되는 IoT 애플리케이션들 및 데이터에 대한 디폴트들로서 역할을 할 수 있다. 이러한 디폴트들을 무시하기 위해 추가적인 권한들이 정의될 수 있다.
도 25는 서비스 가입자가 성공적으로 등록할 때 자동 생성될 수 있는 향상된 <serviceSubscribedAppRule> 리소스를 도시한다. 등록자가 그 등록 요청에서 정의할 수 있는 권한들로 구성될 수 있는 <accessControlPolicy> 리소스에 대한 링크로 구성될 수 있는 defaultACPID 속성이 도입된다. 이러한 권한들은 이와 연관되는 주어진 IoT 애플리케이션 및 데이터에 대한 디폴트들로서 역할을 할 수 있다. 이러한 디폴트들을 무시하기 위해 추가적인 권한들이 정의될 수 있다. 또한, ruleLink 속성이 도입된다. 이 속성은 하나 이상의 <serviceSubscribedDataRule> 리소스들에 대한 링크로 구성될 수 있다.
도 26은 서비스 가입자가 성공적으로 등록할 때 자동 생성될 수 있는 향상된 <accessControlPolicy> 리소스를 도시한다. 권한들 및 selfPrivilege 속성들에 대한 향상이 도입되어 사용자 식별자들에 대한 지원을 추가한다. 본 명세서에 도입된 바와 같이, 액세스 제어 권한들은 사용자 식별자의 관점에서 정의될 수 있다. 그렇게 함에 있어서, 특정 사용자로부터 수신되는 요청들은 허가되고 승인된 액세스일 수 있다. 또한, 본 명세서에는 oneM2M 요청 프리미티브에 대한 향상이 도입되는데, 이는 사용자-ID가 <accessControlPolicy> 권한들에 대해 체크될 수 있도록 요청 파라미터에 포함되는 것을 허용할 수 있다. 예시적인 실시예에서, 사용자-ID는 요청 파라미터로부터 기존 oneM2M에 포함될 수 있다. 다른 예시적인 실시예에서, 사용자-ID는 새로운 요청 파라미터로서 추가될 수 있다.
도 27은 서비스 가입자가 성공적으로 등록할 때 자동 생성될 수 있는 새로 도입된 <serviceSubscribedUser> 리소스를 도시한다. 사용자-ID 속성이 도입되고 사용자의 식별자로 구성될 수 있다. 등록자가 그 등록 요청에서 정의할 수 있는 권한들로 구성될 수 있는 <accessControlPolicy> 리소스에 대한 링크로 구성될 수 있는 defaultACPID 속성이 도입된다. 이러한 권한들은 주어진 사용자에 대한 디폴트들로서 역할을 할 수 있다. 이러한 디폴트들을 무시하기 위해 추가적인 권한들이 정의될 수 있다. defaultDCPID 속성이 또한 도입된다. 이 속성은, 등록자가 그 등록 요청에서 정의할 수 있는 권한들로 구성될 수 있는, <dataControlPolicy> 리소스에 대한 링크로 구성될 수 있다. 이러한 권한들은 주어진 사용자에 대한 디폴트들로서 역할을 할 수 있다. 이러한 디폴트들을 무시하기 위해 추가적인 권한들이 정의될 수 있다. 또한, ruleLink 속성이 도입된다. 이 속성은 하나 이상의 <serviceSubscribedAppRule> 또는 <serviceSubscribedDataRule> 리소스들에 대한 링크로 구성될 수 있다. 이 속성은 사용자가 액세스하도록 허용될 수 있는 애플리케이션들 및 데이터에 관한 규칙들을 지정하기 위한 다른 메커니즘으로서 역할을 할 수 있다.
도 28은 서비스 가입자가 성공적으로 등록할 때 자동 생성될 수 있는 새로 도입된 <serviceSubscribedDataRule> 리소스를 도시한다. 등록자가 그 등록 요청에서 정의할 수 있는 권한들로 구성될 수 있는 <dataControlPolicy> 리소스에 대한 링크로 구성될 수 있는 defaultDCPID 속성이 도입된다. 이러한 디폴트들을 무시하기 위해 추가적인 권한들이 정의될 수 있다.
도 29는 서비스 가입자가 성공적으로 등록할 때 자동 생성될 수 있는 새로 도입된 <dataControlPolicy> 리소스를 도시한다. 여러 속성들이 도입된다. resourceType 속성은 이 정책이 적용가능한 하나 이상의 resourceType로 구성될 수 있다. specializationType 속성은 이 정책이 적용가능한 하나 이상의 유형의 <flexContainer> 전문화 유형들로 구성될 수 있다. maxNrOfInstances 속성은 주어진 컨테이너 또는 timeSeries에서 허용되는 최대 수의 contentInstances 또는 timeSeriesInstances에 대한 정책 제한으로 구성될 수 있다. maxByteSize 속성은 <container>, <flexContainer> 또는 <timeSeries>와 같은 데이터 저장 리소스에 저장될 수 있는 최대 바이트 제한으로 구성될 수 있다. maxInstanceAge 속성은 <contentInstance> 또는 <timeSeriesInstance> 리소스의 수명에 대한 최대 제한으로 구성될 수 있다. supportedSchemas 속성은 데이터 저장 리소스에 저장되도록 허용되는 콘텐츠에 대한 하나 이상의 허용된 스키마로 구성될 수 있다. supportedOntologies 속성은 데이터 저장 리소스에 저장되도록 허용되는 콘텐츠에 대한 하나 이상의 허용된 온톨로지로 구성될 수 있다.
다른 예시적인 실시예에서, 서비스 제공자의 MEF, MAF 또는 CSE는 그 등록된 IoT 디바이스들 및/또는 IoT 애플리케이션들 각각에 대한 가상화된 서비스 가입자를 대신하여 oneM2M <node> 및/또는 <AE> 리소스들을 자동 생성할 수 있다. 그렇게 함에 있어서, IoT 디바이스들 및 애플리케이션들은 더 단순화될 수 있고, 이들 단계들을 그들 자신들이 수행할 필요가 없을 수 있다. 가입자의 애플리케이션들 또는 디바이스들이 <AE> 또는 <node> 리소스들을 명시적으로 생성할 때 AE-ID들 및 노드-ID들이 서비스 가입자에게 회신되는 것보다는, 이러한 식별자들은 등록 응답에서 회신될 수 있다. 예를 들어, 리소스 제약된 디바이스는 oneM2M AE 등록을 수행할 필요가 없을 수 있는데, 그 이유는 이 등록이 서비스 가입자 등록 시에 그 대신에 자동으로 행해질 수 있기 때문이다.
다른 예시적인 실시예에서, 서비스 제공자의 MEF, MAF 또는 CSE는 가상화된 서비스 가입자의 등록된 IoT 데이터 세트들의 가져오기 및 저장을 위한 리소스들뿐만 아니라 oneM2M 데이터 저장 정책들을 자동 생성할 수 있다. 그렇게 함에 있어서, IoT 디바이스들 및 애플리케이션들은 더 단순화될 수 있고, 이 단계를 그들 자신들이 수행할 필요가 없을 수 있다. 예를 들어, oneM2M 저장 기반 리소스들의 적용가능한 유형들은 <container>, <contentInstance>, <flexContainer>, <timeSeries> 또는 <timeSeriesInstance>를 포함할 수 있다.
다른 예시적인 실시예에서, 서비스 제공자의 MEF, MAF 또는 CSE는 oneM2M <accessControlPolicy> 리소스(들)를 자동 생성할 수 있고, 서비스 가입자 및/또는 그것이 등록하고 있는 IoT 디바이스들, 애플리케이션들, 데이터 세트들 및/또는 사용자들을 대신하여 이들 리소스들 내의 허가 권한들을 구성할 수 있다. 리소스들 및 권한들의 생성, 구성 및 링크는 서비스 제공자에 의해 정의되는 정책들뿐만 아니라 그 등록 요청에서 서비스 가입자에 의해 제공되는 정보(예를 들어, 정책들)에 의존할 수 있다. <accessControlPolicy> 리소스들의 이러한 자동 생성, 구성 및 링크는 다른 리소스들(예를 들어, <AE>, <node>, <container>, <flexContainer>, <timeSeries>, <timeSeriesInstance>, <contentInstance>)의 자동 생성이 등록 프로세스 동안 MEF, MAF 또는 CSE에 의해 수행되는 경우에 트리거링될 수 있다. 추가로, 트리거링은 등록이 완료된 후에 그리고 AE가 추가적인 리소스들을 나중에 생성한 후에 또한 발생할 수 있다. 이것이 발생하는 경우, MEF, MAF는 이 때에도 이들 동작들을 수행할 수 있다.
도 30은 가상화된 서비스 가입자의 적어도 하나의 디바이스를 서비스 계층 엔티티에 기재하고 등록하기 위한 예시적인 프로세스를 도시하는 흐름도이다.
블록 3010에서, 서비스 계층 엔티티는 통신 네트워크에 접속될 수 있는 복수의 네트워크 디바이스들의 사용자에 관한 정보 및 복수의 네트워크 디바이스들 각각에 관한 정보를 포함하는 전자 프로파일을 수신할 수 있다. 각각의 네트워크 디바이스에 관한 정보는 적어도 네트워크 디바이스의 연관된 식별자 및 하나 이상의 허용된 데이터 유형을 포함하는 연관된 데이터 제어 정책을 포함할 수 있다. 하나 이상의 허용된 데이터 유형 중의 허용된 데이터 유형은 데이터의 포맷을 포함할 수 있다. 전자 프로파일은 하나 이상의 허용된 애플리케이션; 한 명 이상의 허가된 사용자; 하나 이상의 선택된 서비스 등록 선택권; 하나 이상의 지정된 액세스 권한; 및 하나 이상의 서비스 등록 유효기간 중 적어도 하나를 더 포함할 수 있다.
블록 3020에서, 서비스 계층 엔티티는, 서비스 계층 엔티티의 메모리에서, 하나 이상의 리소스를 생성할 수 있다. 서비스 계층 엔티티는 사용자와 복수의 네트워크 디바이스들 각각에 관한 전자 프로파일에 포함되고, 전자 프로파일에서 각각의 네트워크 디바이스의 연관된 식별자 및 연관된 데이터 제어 정책을 포함하는 정보를 하나 이상의 리소스 내에 저장할 수 있다.
블록 3030에서, 서비스 계층 엔티티는, 통신 네트워크에 접속된 네트워크 디바이스로부터, 네트워크 디바이스를 서비스 계층 엔티티에 등록하라는 전자 요청을 수신할 수 있다. 이 요청은 요청하는 네트워크 디바이스가 통신 네트워크 상에서 전송하도록 구성되는 데이터의 제1 식별자 및 제1 데이터 유형을 포함할 수 있다.
블록 3040에서, 서비스 계층 엔티티는, 하나 이상의 리소스에 기반하여, 요청하는 네트워크 디바이스의 제1 식별자가 전자 프로파일에서 복수의 디바이스들 중 하나의 디바이스의 연관된 식별자와 일치하는 것으로 결정할 수 있다.
블록 3050에서, 서비스 계층 엔티티는 또한, 하나 이상의 리소스에 기반하여, 요청하는 디바이스의 제1 데이터 유형이 전자 프로파일에서 일치하는 식별자를 갖는 디바이스의 연관된 데이터 제어 정책의 허용된 데이터 유형들 중 하나와 일치하는 것으로 결정할 수 있다.
블록 3060에서, 서비스 계층 엔티티는 결정들에 기반하여, 요청하는 디바이스를 서비스 계층 엔티티에 등록할 수 있다.
등록 후에, 서비스 계층 엔티티는 요청하는 디바이스가 제2 데이터 유형을 생성하고 있고 제2 데이터 유형이 전자 프로파일에서 일치하는 식별자를 갖는 디바이스의 연관된 데이터 제어 정책의 허용된 데이터 유형들 중 하나 이상과 일치하지 않는다고 결정할 수 있다. 이어서, 서비스 계층 엔티티는 요청하는 디바이스를 등록 취소할 수 있다.
도 31에 도시된 바와 같은 사용자 인터페이스는 그 자신뿐만 아니라 그 IoT 디바이스들, 애플리케이션들, 데이터 세트들 및 허가된 사용자들의 소프트웨어 가상화를 이용하여 서비스 등록자를 보조하도록 구현될 수 있다. 특히, 인터페이스는 사용자가 엔티티 셋업 및 배치 동안 파라미터들에 대한 원하는 값들을 입력하게 하거나 파라미터들의 값들에 액세스하게 하는 그래픽 사용자 인터페이스(GUI)를 가질 수 있다. 사용자 인터페이스는 IoT 서비스 등록자 가상화의 자동화를 위한 사진들의 이용을 지원할 수 있다. 예를 들어, 디바이스의 제조자, 모델 및 일련 번호와 같은 정보가 사진으로부터, 디바이스 상에 인쇄된 정보로부터, 또는 일치를 찾기 위한 디바이스 이미지의 IoT 디바이스 이미지들의 데이터베이스에 대한 비교로부터 추출될 수 있다. 사진으로부터 또한 추출 또는 추론될 수 있는 다른 유형들의 정보는 IoT 디바이스의 위치 및 이용일 수 있다. 사용자 인터페이스는 또한, 어떤 사용자들을 그 디바이스에 액세스하고 이를 이용하도록 허가할 수 있을지와 같이 IoT 디바이스에 관한 등록자 질문들을 요청하는데 이용될 수 있다. 도 31에서 알 수 있는 바와 같이, 입력 박스들 및/또는 선택 버튼들은 속성들을 입력하거나 변경하는데 이용될 수 있다.
예시적인 환경
도 32a는 하나 이상의 개시된 실시예가 구현될 수 있는 예시적인 기기간(M2M), 사물 인터넷(IoT), 또는 사물 웹(WoT) 통신 시스템(10)의 도면이다. 일반적으로, M2M 기술들은 IoT/WoT에 대한 구성 블록들을 제공하고, 임의의 M2M 디바이스, M2M 게이트웨이, M2M 서버, 또는 M2M 서비스 플랫폼은 IoT/WoT의 구성요소 또는 노드는 물론 IoT/WoT 서비스 계층 등일 수 있다. 도 1, 도 3 내지 도 6, 도 8 내지 도 12, 도 15, 도 16, 도 18, 도 20, 또는 도 22 중 임의의 것에 도시된 클라이언트, 프록시, 또는 서버 디바이스들 중 임의의 것은, 도 32a 내지 도 32d에 도시된 것들과 같은, 통신 시스템의 노드를 포함할 수 있다.
서비스 계층은 네트워크 서비스 아키텍처 내의 기능적 계층일 수 있다. 서비스 계층들은 통상적으로 HTTP, CoAP 또는 MQTT와 같은 애플리케이션 프로토콜 계층 위에 있으며 클라이언트 애플리케이션들에게 부가 가치 서비스들을 제공한다. 서비스 계층은 또한 예를 들어, 제어 계층 및 전송/액세스 계층과 같은 하위 리소스 계층에서 코어 네트워크들에 인터페이스를 제공한다. 서비스 계층은 서비스 정의, 서비스 실행시간 가능화, 정책 관리, 액세스 제어, 및 서비스 클러스터링을 포함하는 복수의 카테고리의 (서비스) 능력들 또는 기능들을 지원한다. 최근에, 몇개의 산업 표준 기관들, 예컨대, oneM2M이 M2M 유형들의 디바이스들 및 애플리케이션들을 인터넷/웹, 셀룰러, 기업, 및 홈 네트워크들과 같은 배치들에 통합시키는 것과 연관된 과제들을 해결하기 위해 M2M 서비스 계층들을 개발해오고 있다. M2M 서비스 계층은 애플리케이션들 및/또는 다양한 디바이스들에게 CSE 또는 SCL이라고 지칭될 수 있는, 서비스 계층에 의해 지원되는, 위에서 언급된 능력들 또는 기능들의 컬렉션 또는 세트에 대한 액세스를 제공할 수 있다. 몇몇 예들은 다양한 애플리케이션들에 의해 공통으로 이용될 수 있는 보안, 과금, 데이터 관리, 디바이스 관리, 발견, 프로비저닝 및 접속성 관리를 포함하지만 이들로 제한되지 않는다. 이들 능력들 및 기능들은 M2M 서비스 계층에 의해 정의된 메시지 포맷들, 리소스 구조들 및 리소스 표현들을 이용하는 API들을 통해 이러한 다양한 애플리케이션들에 이용가능하게 된다. CSE 또는 SCL은, 하드웨어 및/또는 소프트웨어에 의해 구현될 수 있고, 다양한 애플리케이션들 및/또는 디바이스들(즉, 이러한 기능적 엔티티들 사이의 기능적 인터페이스들)이 이러한 능력들 또는 기능들을 이용하도록 하기 위해 이들에 노출되는 (서비스) 능력들 또는 기능들을 제공하는 기능적 엔티티이다.
도 32a에 도시된 바와 같이, M2M/IoT/WoT 통신 시스템(10)은 통신 네트워크(12)를 포함한다. 통신 네트워크(12)는 고정형 네트워크(예를 들어, 이더넷, 파이버, ISDN, PLC 등) 또는 무선 네트워크(예를 들어, WLAN, 셀룰러 등)일 수 있거나, 또는 이종 네트워크들 중 하나의 네트워크일 수 있다. 예를 들어, 통신 네트워크(12)는 음성, 데이터, 비디오, 메시징, 브로드캐스트 등과 같은 콘텐츠를 복수의 사용자들에게 제공하는 복수의 액세스 네트워크들로 구성될 수 있다. 예를 들어, 통신 네트워크(12)는 CDMA(code division multiple access), TDMA(time division multiple access), FDMA(frequency division multiple access), OFDMA(orthogonal FDMA), SC-FDMA(single-carrier FDMA) 등과 같은 하나 이상의 채널 액세스 방법을 이용할 수 있다. 또한, 통신 네트워크(12)는 예를 들어, 코어 네트워크, 인터넷, 센서 네트워크, 산업용 제어 네트워크, 개인 영역 네트워크, 융합형 개인 네트워크(fused personal network), 위성 네트워크, 홈 네트워크, 또는 기업 네트워크와 같은 다른 네트워크들을 포함할 수 있다.
도 32a에 도시된 바와 같이, M2M/IoT/WoT 통신 시스템(10)은 인프라스트럭처 도메인 및 필드 도메인을 포함할 수 있다. 인프라스트럭처 도메인은 엔드-투-엔드 M2M 배치의 네트워크측을 지칭하고, 필드 도메인은 보통 M2M 게이트웨이 뒤에 있는 영역 네트워크들을 지칭한다. 필드 도메인 및 인프라스트럭처 도메인 둘 다는 다양하고 상이한 네트워크 노드들(예컨대, 서버들, 게이트웨이들, 디바이스 등)을 포함할 수 있다. 예를 들어, 필드 도메인은 M2M 게이트웨이들(14) 및 디바이스들(18)을 포함할 수 있다. 원하는 바에 따라, 임의의 수의 M2M 게이트웨이 디바이스들(14) 및 M2M 디바이스들(18)이 M2M/IoT/WoT 통신 시스템(10)에 포함될 수 있다는 것을 잘 알 것이다. M2M 게이트웨이 디바이스들(14) 및 M2M 디바이스들(18) 각각은, 통신 회로를 이용하여, 통신 네트워크(12) 또는 직접 무선 링크를 통해 신호들을 전송 및 수신하도록 구성되어 있다. M2M 게이트웨이(14)는 무선 M2M 디바이스들(예컨대, 셀룰러 및 비-셀룰러)은 물론 고정형 네트워크 M2M 디바이스들(예컨대, PLC)이 통신 네트워크(12)와 같은 운영자 네트워크들 또는 직접 무선 링크를 통해 통신할 수 있게 한다. 예를 들어, M2M 디바이스들(18)은 데이터를 수집하고 데이터를, 통신 네트워크(12) 또는 직접 무선 링크를 통해, M2M 애플리케이션(20) 또는 다른 M2M 디바이스들(18)에게 전송할 수 있다. M2M 디바이스들(18)은 또한 M2M 애플리케이션(20) 또는 M2M 디바이스(18)로부터 데이터를 수신할 수 있다. 또한, 후술하는 바와 같이, 데이터 및 신호들은 M2M 서비스 계층(22)을 통해 M2M 애플리케이션(20)에 전송되고 M2M 애플리케이션(20)으로부터 수신될 수 있다. M2M 디바이스들(18) 및 M2M 게이트웨이들(14)은, 예를 들어, 셀룰러, WLAN, WPAN(예컨대, 지그비(Zigbee), 6LoWPAN, 블루투스(Bluetooth)), 직접 무선 링크, 및 유선을 포함하는 다양한 네트워크들을 통해 통신할 수 있다. 예시적인 M2M 디바이스들은 태블릿들, 스마트폰들, 의료 디바이스들, 온도 및 날씨 모니터들, 커넥티드 카들, 스마트 계량기들, 게임 콘솔들, PDA들, 건강 및 피트니스 모니터들, 조명들, 서모스탯들, 가전기기들, 차고 문들 및 다른 액추에이터 기반 디바이스들, 보안 디바이스들, 및 스마트 콘센트들을 포함하지만, 이들로 제한되지는 않는다.
도 32b를 참조하면, 필드 도메인에서의 도시된 M2M 서비스 계층(22)은 M2M 애플리케이션(20), M2M 게이트웨이들(14), 및 M2M 디바이스들(18) 및 통신 네트워크(12)에게 서비스들을 제공한다. M2M 서비스 계층(22)이 원하는 바에 따라 임의의 수의 M2M 애플리케이션들, M2M 게이트웨이들(14), M2M 디바이스들(18), 및 통신 네트워크들(12)과 통신할 수 있다는 것을 잘 알 것이다. M2M 서비스 계층(22)은, 서버들, 컴퓨터들, 디바이스들 등을 포함할 수 있는, 네트워크의 하나 이상의 노드에 의해 구현될 수 있다. M2M 서비스 계층(22)은 M2M 디바이스들(18), M2M 게이트웨이들(14) 및 M2M 애플리케이션들(20)에 적용되는 서비스 능력들을 제공한다. M2M 서비스 계층(22)의 기능들은, 예를 들어 웹 서버로서, 셀룰러 코어 네트워크, 클라우드 등에서 다양한 방식들로 구현될 수 있다.
도시된 M2M 서비스 계층(22)과 유사하게, 인프라스트럭처 도메인에는 M2M 서비스 계층(22')이 존재한다. M2M 서비스 계층(22')은 인프라스트럭처 도메인 내의 M2M 애플리케이션(20') 및 기본 통신 네트워크(12)에게 서비스들을 제공한다. M2M 서비스 계층(22')은 또한 필드 도메인 내의 M2M 게이트웨이들(14) 및 M2M 디바이스들(18)에게 서비스들을 제공한다. M2M 서비스 계층(22')이 임의의 수의 M2M 애플리케이션들, M2M 게이트웨이들 및 M2M 디바이스들과 통신할 수 있다는 것이 이해될 것이다. M2M 서비스 계층(22')은 상이한 서비스 제공자에 의해 서비스 계층과 상호작용할 수 있다. M2M 서비스 계층(22')은, 서버들, 컴퓨터들, 디바이스들, 가상 머신들(예컨대, 클라우드 컴퓨팅/저장소 팜들 등) 등을 포함할 수 있는, 네트워크의 하나 이상의 노드에 의해 구현될 수 있다.
또한 도 32b를 참조하면, M2M 서비스 계층들(22 및 22')은 다양한 애플리케이션 및 버티컬(vertical)들이 활용할 수 있는 서비스 전달 능력들의 코어 세트를 제공한다. 이 서비스 능력들은 M2M 애플리케이션들(20 및 20')이 디바이스들과 상호작용할 수 있게 하고 데이터 수집, 데이터 분석, 디바이스 관리, 보안, 청구, 서비스/디바이스 발견 등과 같은 기능들을 수행할 수 있게 한다. 기본적으로, 이 서비스 능력들은 애플리케이션들로부터 이 기능들을 구현하는 부담을 덜어주고, 따라서 애플리케이션 개발을 단순화하고 출시까지의 비용 및 시간을 감소시킨다. 서비스 계층들(22 및 22')은 또한, M2M 애플리케이션들(20 및 20')이, 서비스 계층들(22 및 22')이 제공하는 서비스들과 관련하여 네트워크(12) 등의 다양한 네트워크들을 통해 통신하게 할 수 있다.
M2M 애플리케이션들(20 및 20')은, 이에 제한되는 것은 아닌, 운송, 건강 및 보건, 커넥티드 홈(connected home), 에너지 관리, 자산 추적, 그리고 보안 및 감시와 같은 다양한 산업들에서의 애플리케이션들을 포함할 수 있다. 전술한 바와 같이, M2M 서비스 계층, 디바이스들에 걸쳐 실행하는 것, 게이트웨이들, 서버들 및 시스템의 다른 노드들은, 예를 들어 데이터 수집, 디바이스 관리, 보안, 청구, 위치 추적/지오펜싱, 디바이스/서비스 발견, 및 레거시 시스템들의 통합과 같은 기능들을 지원하고, 이러한 기능들을 서비스들로서 M2M 애플리케이션들(20 및 20')에 제공한다.
일반적으로, 도 32b에 도시된 서비스 계층들(22 및 22') 등의 서비스 계층은, 애플리케이션 프로그래밍 인터페이스들(API들) 및 기본 네트워킹 인터페이스들의 세트를 통해 부가 가치 서비스 능력들을 지원하는 소프트웨어 미들웨어 계층을 정의한다. ETSI M2M과 oneM2M 아키텍처들 양쪽 모두는 서비스 계층을 정의한다. ETSI M2M의 서비스 계층은 SCL(Service Capability Layer)이라고 지칭된다. SCL은 ETSI M2M 아키텍처의 다양하고 상이한 노드들에서 구현될 수 있다. 예를 들어, 서비스 계층의 인스턴스는 M2M 디바이스(여기서 디바이스 SCL(DSCL)이라고 지칭됨), 게이트웨이(여기서 게이트웨이 SCL(GSCL)이라고 지칭됨), 및/또는 네트워크 노드(여기서 네트워크 SCL(NSCL)이라고 지칭됨) 내에 구현될 수 있다. oneM2M 서비스 계층은 CSF들(즉, 서비스 능력들)의 세트를 지원한다. 하나 이상의 특정한 유형의 CSF들의 세트의 인스턴스화는 상이한 유형들의 네트워크 노드들(예를 들어, 인프라스트럭처 노드, 중간 노드, 애플리케이션 특정 노드) 상에서 호스팅될 수 있는 공통 서비스 엔티티(CSE)라고 지칭된다. 3GPP(Third Generation Partnership Project)는 또한 MTC(machine-type communications)에 대한 아키텍처도 정의하였다. 그 아키텍처에서, 서비스 계층, 및 이것이 제공하는 서비스 능력들은 서비스 능력 서버(SCS)의 일부로서 구현된다. ETSI M2M 아키텍처의 DSCL, GSCL, 또는 NSCL에, 3GPP MTC 아키텍처의 SCS에, oneM2M 아키텍처의 CSF 또는 CSE에, 또는 네트워크의 어떤 다른 노드에 구현되든 간에, 서비스 계층의 인스턴스는, 서버들, 컴퓨터들, 및 다른 컴퓨팅 디바이스들 또는 노드들을 포함한, 네트워크 내의 하나 이상의 독립형 노드 상에서 실행되는 논리 엔티티(예컨대, 소프트웨어, 컴퓨터 실행가능한 명령어들 등)로서 또는 하나 이상의 기존의 노드의 일부로서 구현될 수 있다. 예로서, 서비스 계층 또는 그 구성요소의 인스턴스는 아래에 설명되는 도 32c 또는 도 32d에 도시되는 일반적인 아키텍처를 갖는 네트워크 노드(예를 들어, 서버, 컴퓨터, 게이트웨이, 디바이스 등) 상에서 실행되는 소프트웨어의 형태로 구현될 수 있다.
게다가, 본 명세서에서 설명되는 방법들 및 기능들은 서비스들에 액세스하기 위해 SOA(Service Oriented Architecture) 및/또는 ROA(Resource-Oriented Architecture)를 이용하는 M2M 네트워크의 일부로서 구현될 수 있다.
도 32c는 도 32a 및 도 32b에 도시된 것과 같은 M2M 네트워크 내의 M2M 서버, 게이트웨이, 디바이스, 또는 다른 노드로서 동작할 수 있는, 도 1, 도 3 내지 도 6, 도 8 내지 도 12, 도 15, 도 16, 도 18, 도 20, 또는 도 22에 도시된 클라이언트들, 서버들, 또는 프록시들 중 하나와 같은 네트워크의 노드의 예시적인 하드웨어/소프트웨어 아키텍처의 블록도이다. 도 32c에 도시된 바와 같이, 노드(30)는 프로세서(32), 비이동식 메모리(44), 이동식 메모리(46), 스피커/마이크로폰(38), 키패드(40), 디스플레이, 터치패드, 및/또는 표시기들(42), 전원(48), 전역 포지셔닝 시스템(GPS) 칩셋(50), 및 다른 주변기기들(52)을 포함할 수 있다. 노드(30)는 또한 트랜시버(34) 및 전송/수신 요소(36)와 같은 통신 회로를 포함할 수 있다. 노드(30)는, 실시예와 일관되면서 전술된 요소들의 임의의 하위조합을 포함할 수 있다는 것을 이해할 것이다. 이 노드는, 본 명세서에서, 예를 들어 도 7, 도 15, 도 16, 도 18, 도 20, 도 22, 및 도 30과 관련하여 설명된 방법들, 또는 도 1 내지 도 6, 도 8 내지 도 14, 도 17, 도 19, 도 21, 및 도 23 내지 도 29의 데이터 구조들과 관련하여 또는 청구항에서 설명되는 자동화된 IoT 서비스 등록을 구현하는 노드일 수 있다.
프로세서(32)는 범용 프로세서, 특수 목적 프로세서, 종래의 프로세서, 디지털 신호 프로세서(DSP), 복수의 마이크로프로세서, DSP 코어와 연관된 하나 이상의 마이크로프로세서, 제어기, 마이크로제어기, 주문형 집적 회로들(ASIC들), 필드 프로그래머블 게이트 어레이(FPGA) 회로들, 임의의 다른 유형의 집적 회로(IC), 상태 머신 등일 수 있다. 일반적으로, 프로세서(32)는 노드의 다양한 요청된 기능들을 수행하기 위해 노드의 메모리(예를 들어, 메모리(44) 및/또는 메모리(46))에 저장되는 컴퓨터 실행가능한 명령어들을 실행할 수 있다. 예를 들어, 프로세서(32)는 신호 코딩, 데이터 처리, 전력 제어, 입력/출력 처리, 및/또는 노드(30)가 무선 또는 유선 환경에서 동작할 수 있게 하는 임의의 다른 기능을 수행할 수 있다. 프로세서(32)는 애플리케이션 계층 프로그램들(예컨대, 브라우저들) 및/또는 RAN(radio access-layer) 프로그램들 및/또는 다른 통신 프로그램들을 실행할 수 있다. 프로세서(32)는 또한 예를 들어 액세스 계층 및/또는 애플리케이션 계층 등에서의 인증, 보안 키 일치, 및/또는 암호화 동작들 등의 보안 동작들을 수행할 수 있다.
도 32c에 도시된 바와 같이, 프로세서(32)는 그 통신 회로(예를 들어, 트랜시버(34) 및 전송/수신 요소(36))에 결합된다. 프로세서(32)는, 컴퓨터 실행가능한 명령어들의 실행을 통해, 노드(30)가 접속되는 네트워크를 통해 다른 노드들과 통신하게 하기 위해 통신 회로를 제어할 수 있다. 특히, 프로세서(32)는 본 명세서(예컨대, 도 7, 도 15, 도 16, 도 18, 도 20, 도 22 및 도 30)에서 그리고 청구항들에서 설명된 전송 및 수신 단계들을 수행하기 위해 통신 회로를 제어할 수 있다. 도 32c가 프로세서(32)와 트랜시버(34)를 별도의 구성요소들로서 도시하고 있지만, 프로세서(32)와 트랜시버(34)는 전자 패키지 또는 칩 내에 함께 통합될 수 있다는 것을 이해할 것이다.
전송/수신 요소(36)는, M2M 서버들, 게이트웨이들, 디바이스 등을 포함한 다른 노드들에 신호들을 전송하거나 이들로부터 신호들을 수신하도록 구성될 수 있다. 예를 들어, 실시예에서, 전송/수신 요소(36)는 RF 신호들을 전송 및/또는 수신하도록 구성된 안테나일 수 있다. 전송/수신 요소(36)는 다양한 네트워크들 및 무선 인터페이스들(air interfaces), 예컨대 WLAN, WPAN, 셀룰러 등을 지원할 수 있다. 실시예에서, 전송/수신 요소(36)는, 예를 들어 IR, UV, 또는 가시광 신호들을 전송 및/또는 수신하도록 구성되는 방출기/검출기일 수 있다. 또 다른 실시예에서, 전송/수신 요소(36)는 RF 신호 및 광 신호 양쪽 모두를 전송 및 수신하도록 구성될 수 있다. 전송/수신 요소(36)는 무선 또는 유선 신호들의 임의의 조합을 전송 및/또는 수신하도록 구성될 수 있다는 것을 이해할 것이다.
또한, 전송/수신 요소(36)가 도 32c에 단일 요소로서 도시되지만, 노드(30)는 임의 수의 전송/수신 요소들(36)을 포함할 수 있다. 보다 구체적으로는, 노드(30)는 MIMO 기술을 이용할 수 있다. 따라서, 실시예에서, 노드(30)는 무선 신호들을 전송 및 수신하기 위한 2개 이상의 전송/수신 요소들(36)(예컨대, 복수의 안테나들)을 포함할 수 있다.
트랜시버(34)는 전송/수신 요소(36)에 의해 전송될 신호들을 변조하고, 전송/수신 요소(36)에 의해 수신되는 신호들을 복조하도록 구성될 수 있다. 앞서 살펴본 바와 같이, 노드(30)는 다중 모드 능력들을 가질 수 있다. 그러므로, 트랜시버(34)는 노드(30)가 예를 들어, UTRA 및 IEEE 802.11과 같은 복수의 RAT들을 통해 통신하게 하는 복수의 트랜시버들을 포함할 수 있다.
프로세서(32)는 비이동식 메모리(44) 및/또는 이동식 메모리(46)와 같은 임의의 유형의 적절한 메모리로부터의 정보에 액세스하고 이에 데이터를 저장할 수 있다. 예를 들어, 프로세서(32)는 전술한 바와 같이, 그 메모리에 세션 컨텍스트를 저장할 수 있다. 비이동식 메모리(44)는 RAM(random-access memory), ROM(read-only memory), 하드 디스크, 또는 임의의 다른 유형의 메모리 저장 디바이스를 포함할 수 있다. 이동식 메모리(46)는 SIM(subscriber identity module) 카드, 메모리 스틱, SD(secure digital) 메모리 카드 등을 포함할 수 있다. 다른 실시예들에서, 프로세서(32)는, 서버 또는 홈 컴퓨터 상에서와 같이, 노드(30) 상에 물리적으로 위치되지 않은 메모리로부터의 정보에 액세스하고 이에 데이터를 저장할 수 있다. 프로세서(32)는 디스플레이 또는 표시기들(42) 상의 조명 패턴들, 이미지들 또는 색상들을 제어하여 노드의 상태를 반영하거나 노드를 구성하고 특히 노드와 통신하는 기본 네트워크들, 애플리케이션들 또는 다른 서비스들을 구성할 수 있다. 일 실시예에서, 디스플레이/표시기들(42)은 도 31에 도시되고 본 명세서에 설명되는 그래픽 사용자 인터페이스를 제시할 수 있다.
프로세서(32)는 전원(48)으로부터 전력을 수신할 수 있고, 전력을 노드(30) 내의 다른 구성요소들에 분배 및/또는 제어하도록 구성될 수 있다. 전원(48)은 노드(30)에 전력을 공급하기 위한 임의의 적절한 디바이스일 수 있다. 예를 들어, 전원(48)은 하나 이상의 건전지 배터리(예를 들어, 니켈-카드뮴(NiCd), 니켈-아연(NiZn), 니켈 금속 수소화물(NiMH), 리튬-이온(Li-ion) 등), 태양 전지들, 연료 전지들 등을 포함할 수 있다.
프로세서(32)는 또한 GPS 칩셋(50)과 결합될 수 있으며, 이는 노드(30)의 현재 위치에 관한 위치 정보(예를 들어, 경도 및 위도)를 제공하도록 구성된다. 노드(30)는 실시예와 일관성을 유지하면서 임의의 적절한 위치 결정 방법에 의해 위치 정보를 획득할 수 있다는 점이 이해될 것이다.
프로세서(32)는 다른 주변기기들(52)에 또한 결합될 수 있으며, 이러한 주변기기들은, 추가적인 특징들, 기능 및/또는 유선 또는 무선 접속성을 제공하는 하나 이상의 소프트웨어 및/또는 하드웨어 모듈을 포함할 수 있다. 예를 들어, 주변기기들(52)은 가속도계, 생체측정(예컨대, 지문) 센서들, 전자 나침반(e-compass), 위성 트랜시버, 센서와 같은 다양한 센서들, 디지털 카메라(사진 또는 비디오용), USB(universal serial bus) 포트 또는 다른 상호접속 인터페이스들, 진동 디바이스, 텔레비전 트랜시버, 핸즈프리 헤드셋, Bluetooth® 모듈, FM(frequency modulated) 무선 유닛, 디지털 음악 플레이어, 미디어 플레이어, 비디오 게임 플레이어 모듈, 인터넷 브라우저 등을 포함할 수 있다.
노드(30)는, 센서, 소비자 전자제품, 스마트 워치 또는 스마트 의류와 같은 웨어러블 디바이스, 의료 또는 e헬스(eHealth) 디바이스, 로봇, 산업 장비, 드론, 자동차, 트럭, 기차 또는 비행기와 같은 운송수단 등의 다른 장치들 또는 디바이스들에 구현될 수 있다. 노드(30)는, 주변기기들(52) 중 하나를 포함할 수 있는 상호접속 인터페이스와 같은 하나 이상의 상호접속 인터페이스를 통해 이러한 장치들 또는 디바이스들의 다른 구성요소들, 모듈들 또는 시스템들에 접속될 수 있다.
도 32d는 도 32a 및 도 32b에 도시된 것과 같은 M2M 네트워크 내의 M2M 서버, 게이트웨이, 디바이스, 또는 다른 노드로서 동작할 수 있는, 도 1, 도 3 내지 도 6, 도 8 내지 도 12, 도 15, 도 16, 도 18, 도 20, 또는 도 22에 도시되고 본 명세서에서 설명된 클라이언트들, 서버들, 또는 프록시들과 같은 네트워크의 하나 이상의 노드를 구현하는데 또한 이용될 수 있는 예시적인 컴퓨팅 시스템(90)의 블록도이다.
컴퓨팅 시스템(90)은 컴퓨터 또는 서버를 포함할 수 있고, 주로 컴퓨터 판독가능한 명령어들에 의해 제어될 수 있으며, 컴퓨터 판독가능한 명령어들은 소프트웨어의 형태로 어느 곳에나 있을 수 있거나, 어떤 수단에 의해서든 이러한 소프트웨어가 저장되거나 액세스된다. 이러한 컴퓨터 판독가능한 명령어들은 컴퓨팅 시스템(90)으로 하여금 작업하게 하기 위해, 중앙 처리 유닛(CPU)(91)과 같은, 프로세서 내에서 실행될 수 있다. 많은 공지된 워크스테이션들, 서버들, 및 개인용 컴퓨터들에서, 중앙 처리 유닛(91)은 마이크로프로세서로 불리는 단일-칩 CPU에 의해 구현된다. 다른 머신들에서, 중앙 처리 유닛(91)은 복수의 프로세서를 포함할 수 있다. 코프로세서(81)는 추가 기능들을 수행하거나 CPU(91)를 보조하는, 메인 CPU(91)와는 별개인 임의적인 프로세서이다. CPU(91) 및/또는 코프로세서(81)는, 세션 자격증명들을 수신하거나 세션 자격증명들을 기반으로 인증하는 것과 같이, E2E M2M 서비스 계층 세션들에 대해 개시되는 시스템들 및 방법들에 관련된 데이터를 수신, 생성 및 처리할 수 있다.
동작에 있어서, CPU(91)는 명령어들을 패치, 디코딩, 및 실행하고, 컴퓨터의 메인 데이터 전송 경로, 시스템 버스(80)를 통해 다른 리소스들에 그리고 이들로부터 정보를 전송한다. 이러한 시스템 버스는 컴퓨팅 시스템(90)에서의 구성요소들을 접속하고 데이터 교환을 위한 매체를 정의한다. 시스템 버스(80)는 데이터를 전송하기 위한 데이터 라인들, 어드레스들을 전송하기 위한 어드레스 라인들, 및 인터럽트들을 전송하고 시스템 버스를 동작시키기 위한 제어 라인들을 통상적으로 포함한다. 이러한 시스템 버스(80)의 예는 PCI(Peripheral Component Interconnect) 버스이다.
시스템 버스(80)와 결합되는 메모리들은 RAM(82) 및 ROM(93)을 포함한다. 이러한 메모리들은 정보가 저장되고 검색되게 하는 회로를 포함한다. ROM들(93)은 쉽게 수정될 수 없는 저장된 데이터를 일반적으로 포함한다. RAM(82)에 저장되는 데이터는 CPU(91) 또는 다른 하드웨어 디바이스들에 의해 판독되거나 또는 변경될 수 있다. RAM(82) 및/또는 ROM(93)에 대한 액세스는 메모리 제어기(92)에 의해 제어될 수 있다. 메모리 제어기(92)는 명령어들이 실행됨에 따라 가상 어드레스들을 물리적 어드레스들로 변환하는 어드레스 변환 기능을 제공할 수 있다. 메모리 제어기(92)는 시스템 내의 프로세스들을 격리하고 시스템 프로세스들을 사용자 프로세스들로부터 격리하는 메모리 보호 기능을 또한 제공할 수 있다. 따라서, 제1 모드에서 실행되는 프로그램은 그 자신의 프로세스 가상 어드레스 공간에 의해 매핑되는 메모리에만 액세스할 수 있고, 프로세스들 사이의 메모리 공유가 설정되지 않았다면 다른 프로세스의 가상 어드레스 공간 내의 메모리에 액세스할 수 없다.
또한, 컴퓨팅 시스템(90)은 CPU(91)로부터 프린터(94), 키보드(84), 마우스(95), 및 디스크 드라이브(85)와 같은 주변기기들로 명령어들을 통신하는 것을 담당하는 주변기기 제어기(83)를 포함할 수 있다.
디스플레이 제어기(96)에 의해 제어되는 디스플레이(86)는 컴퓨팅 시스템(90)에 의해 생성되는 시각적 출력을 표시하는데 이용된다. 이러한 시각적 출력은 텍스트, 그래픽들, 애니메이션 그래픽들, 및 비디오를 포함할 수 있다. 디스플레이(86)는 CRT 기반 비디오 디스플레이, LCD 기반 평면 패널 디스플레이, 가스 플라즈마 기반 평면 패널 디스플레이 또는 터치 패널로 구현될 수 있다. 디스플레이 제어기(96)는 디스플레이(86)에 전송되는 비디오 신호를 생성하는데 요구되는 전자 구성요소들을 포함한다. 디스플레이(86)는, CPU(91)에 의해 실행되는 컴퓨터 실행가능한 명령어들과 조합하여, 도 25 및 그 첨부 설명에 도시되고 설명된 그래픽 사용자 인터페이스를 생성하여 동작시킬 수 있다.
또한, 컴퓨팅 시스템(90)은 도 32a 내지 도 32d의 네트워크(12)와 같은 외부 통신 네트워크에 컴퓨팅 시스템(90)을 접속하여, 컴퓨팅 시스템(90)이 네트워크의 다른 장치들과 통신할 수 있게 하는데 이용될 수 있는, 예를 들어 네트워크 어댑터(97)와 같은 통신 회로를 포함할 수 있다. 통신 회로는, 단독으로 또는 CPU(91)와 조합하여, 본 명세서(예를 들어, 도 1, 도 3, 도 5 내지 도 8, 도 11 내지 도 15, 도 20, 도 21, 도 24, 또는 도 25)에서 그리고 청구항들에서 설명된 전송 및 수신 단계들을 수행하는데 이용될 수 있다.
본 명세서에서 설명되는 시스템들, 방법들 및 프로세스들 중 임의의 것 또는 전부가 컴퓨터 판독가능한 저장 매체 상에 저장된 컴퓨터 실행가능한 명령어들(즉, 프로그램 코드)의 형태로 구현될 수 있고, 이 명령어들이, 예를 들어, M2M 서버, 게이트웨이, 디바이스 등을 포함한 M2M 네트워크의 장치와 같은 머신에 의해 실행될 때, 본 명세서에서 설명되는 시스템들, 방법들 및 프로세스들을 수행 및/또는 구현한다는 것을 잘 알 것이다. 구체적으로, 위에서 설명된 단계들, 동작들 또는 기능들 중 임의의 것은 이러한 컴퓨터 실행가능한 명령어들의 형태로 구현될 수 있다. 컴퓨터 판독가능한 저장 매체는 임의의 비일시적(즉, 유형적 또는 물리적) 방법, 또는 정보 저장을 위한 기술로 구현된 휘발성 및 비휘발성, 이동식 및 비이동식 매체 모두를 포함하지만, 이러한 컴퓨터 판독가능한 저장 매체는 신호들을 포함하지 않는다. 컴퓨터 판독가능한 저장 매체는, 이에 제한되지는 않지만, RAM, ROM, EEPROM, 플래시 메모리 또는 다른 메모리 기술, CD-ROM, DVD(digital versatile disks) 또는 다른 광학 디스크 저장소, 자기 카세트들, 자기 테이프, 자기 디스크 저장소 또는 다른 자기 저장 디바이스들, 또는 원하는 정보를 저장하는데 이용될 수 있고 컴퓨터에 의해 액세스될 수 있는 임의의 다른 유형적 또는 물리적 매체를 포함한다.
다음은 위의 설명에서 나타날 수 있는 서비스 레벨 기술들에 관한 약어들의 리스트이다. 달리 명시되지 않는 한, 본 명세서에서 사용되는 약어들은 아래 열거된 해당 용어를 지칭한다.
ADN
애플리케이션 전용 노드
AE
애플리케이션 엔티티
API
애플리케이션 프로그래밍 인터페이스들
ASE
자동화된 서비스 등록
ASE-C
자동화된 서비스 등록 클라이언트
ASE-S
자동화된 서비스 등록 서버
ASN
애플리케이션 서비스 노드
CSE
공통 서비스 엔티티
CSF
공통 서비스 기능
IN
인프라스트럭처 네트워크
IoT
사물 인터넷
IP
인터넷 프로토콜
M2M
기기간
MN
중간 노드
NoDN
비-oneM2M 노드
PoA
액세스 포인트
ROA
리소스 지향 아키텍처
SL
서비스 계층
URI
통합 리소스 식별자
본 작성된 설명은 최상의 모드를 포함하는 본 발명을 개시하고, 또한 관련 기술분야의 임의의 통상의 기술자가 임의의 디바이스들 또는 시스템들을 제조하여 이용하고 임의의 통합된 방법들을 수행하는 것을 포함하여 본 발명을 실시할 수 있도록 하기 위해 예들을 이용한다. 본 발명의 특허가능한 범위는 청구항들에 의해 정의되며, 관련 기술분야의 통상의 기술자에게 떠오르는 다른 예들을 포함할 수 있다. 이러한 다른 예들은, 이들이 청구항들의 문자 그대로의 표현과 상이하지 않은 요소들을 가지거나, 또는 이들이 청구항들의 문자 그대로의 표현과 실질적인 차이들이 없는 등가의 요소들을 포함하면, 청구항들의 범위 내에 있는 것으로 의도된다.
Claims (20)
- 프로세서 및 메모리를 포함하는 장치로서,
상기 장치는 상기 장치의 상기 메모리에 저장된 컴퓨터 실행가능한 명령어들을 더 포함하고, 상기 컴퓨터 실행가능한 명령어들은 상기 장치의 상기 프로세서에 의해 실행될 때, 상기 장치로 하여금 통신 네트워크에서 애플리케이션 프로그래밍 인터페이스(API)들 및 기본 네트워크 인터페이스들의 세트를 통해 서비스 능력들을 지원하는 서비스를 제공하게 하고, 상기 서비스로 하여금,
상기 통신 네트워크에 접속될 수 있는 하나 이상의 네트워크 디바이스에 관한 정보, 및 상기 네트워크 디바이스들 각각에 관한 정보를 포함하는 전자 프로파일을 수신하고 - 각각의 네트워크 디바이스에 관한 정보는 적어도 상기 네트워크 디바이스의 연관된 식별자, 및 상기 디바이스가 상기 서비스의 하나 이상의 데이터 저장 리소스 내에 저장하도록 허용되는 데이터의 스키마 정의를 포함하는 상기 디바이스들 각각에 대한 연관된 데이터 제어 정책을 포함함 -;
상기 서비스의 상기 메모리에, 하나 이상의 리소스를 생성하고, 상기 하나 이상의 네트워크 디바이스 각각의 연관된 식별자들, 및 상기 하나 이상의 네트워크 디바이스 각각의 연관된 데이터 제어 정책을 포함하는, 상기 하나 이상의 네트워크 디바이스 각각에 관한 상기 전자 프로파일에 포함된 정보를 상기 하나 이상의 리소스 내에 저장하고;
상기 통신 네트워크에 접속된 네트워크 디바이스로부터, 상기 서비스의 하나 이상의 데이터 리소스에 대한 동작을 수행하라는 전자적 요청을 수신하고 - 상기 요청은 상기 요청 디바이스의 제1 식별자 및 상기 요청 디바이스가 동작을 수행하라고 요청하는 하나 이상의 데이터 리소스를 포함함 -;
상기 저장된 전자 프로파일에 기반하여, 상기 요청 디바이스의 상기 제1 식별자가 상기 전자 프로파일 내의 하나 이상의 디바이스 중 하나의 디바이스의 연관된 식별자와 일치하는 것으로 결정하고;
상기 요청 디바이스의 식별자가 상기 전자 프로파일 내의 디바이스들 중 하나의 디바이스의 연관된 식별자와 일치하고, 상기 요청에 포함된 데이터의 유형이 상기 디바이스의 연관된 데이터 제어 정책의 스키마와 일치한다고 결정하고, 상기 결정에 기반하여, 상기 데이터 리소스 내에 상기 데이터를 저장하게 하는, 장치. - 제1항에 있어서,
상기 데이터 제어 정책은 디바이스가 하나 이상의 데이터 저장 리소스에서 구성할 수 있는 최대 수명에 대한 제한을 더 포함하는, 장치. - 제1항에 있어서,
상기 전자 프로파일은 한 명 이상의 허가된 사용자; 하나 이상의 선택된 서비스 등록 선택권; 하나 이상의 지정된 액세스 권한; 및 하나 이상의 서비스 등록 유효기간 중 적어도 하나를 더 포함하는, 장치. - 제1항에 있어서,
상기 명령어들은 추가로 상기 서비스로 하여금,
상기 디바이스의 식별자를 결정하고;
상기 요청 디바이스가 상기 동작을 수행하는 것을 방지하게 하는, 장치. - 제1항에 있어서,
상기 명령어들은 추가로 상기 서비스로 하여금,
상기 전자 프로파일에 정의된 하나 이상의 액세스 제어 권한에 기반하여 하나 이상의 액세스 제어 정책을 생성하고; 상기 액세스 제어 정책들을 상기 디바이스에 의해 생성된 리소스들에 링크하고; 상기 액세스 제어 정책들에 정의된 권한들에 기반하여 상기 리소스들에 액세스하도록 허용되는 복수의 디바이스를 결정하게 하는, 장치. - 제1항에 있어서,
상기 명령어들은 추가로 상기 서비스로 하여금,
상기 전자 프로파일에 정의된 하나 이상의 액세스 제어 권한에 기반하여 하나 이상의 액세스 제어 정책을 생성하고;
상기 액세스 제어 정책들을 상기 디바이스에 의해 생성된 리소스들에 링크하고;
상기 액세스 제어 정책들에 정의된 권한들에 기반하여 상기 리소스들에 액세스하도록 허용되는 복수의 사용자를 결정하게 하는, 장치. - 제1항에 있어서,
상기 명령어들은 추가로 상기 서비스로 하여금,
상기 전자 프로파일에 정의된 하나 이상의 데이터 제어 권한에 기반하여 하나 이상의 데이터 제어 정책을 생성하고;
상기 데이터 제어 정책들을 상기 디바이스에 의해 생성된 하나 이상의 리소스에 링크하고;
상기 데이터 제어 정책들에 기반하여, 요청들의 최대 레이트, 리소스에 저장되도록 허용된 최대 수의 바이트들 또는 최대 수의 자식 리소스 인스턴스들 중 적어도 하나를 결정하게 하는, 장치. - 제1항에 있어서,
상기 명령어들은 추가로 상기 서비스로 하여금,
상기 전자 프로파일에 정의된 하나 이상의 데이터 제어 권한에 기반하여 하나 이상의 데이터 제어 정책을 생성하고;
상기 데이터 제어 정책들을 상기 디바이스에 의해 생성된 하나 이상의 리소스에 링크하고;
상기 데이터 제어 정책들에 기반하여 리소스에 저장되도록 허용된 하나 이상의 데이터 스키마를 결정하게 하는, 장치. - 제1항에 있어서,
상기 전자 프로파일은 상기 통신 네트워크에서의 등록 기능으로부터 수신되는, 장치. - 제1항에 있어서,
상기 서비스는 IoT 서비스들을 위한 서비스 계층에 있는, 장치. - 제10항에 있어서,
상기 서비스 계층은 ETSI/oneM2M 표준들에 따라 정의되는, 장치. - 제1항에 있어서,
상기 하나 이상의 리소스 각각은 RESTful 메소드들을 통해 조작될 수 있는 표현을 갖는 리소스 지향 아키텍처(ROA) 내의 고유하게 어드레스 가능한 요소인, 장치. - 통신 네트워크의 서비스에 의해 수행되는 방법으로서,
상기 통신 네트워크에 접속될 수 있는 하나 이상의 네트워크 디바이스에 관한 정보, 및 상기 네트워크 디바이스들 각각에 관한 정보를 포함하는 전자 프로파일을 수신하는 단계 - 각각의 네트워크 디바이스에 관한 정보는 적어도 상기 네트워크 디바이스의 연관된 식별자, 및 상기 디바이스가 상기 서비스의 하나 이상의 데이터 저장 리소스 내에 저장하도록 허용되는 데이터의 스키마 정의를 포함하는 상기 디바이스들 각각에 대한 연관된 데이터 제어 정책을 포함함 -;
상기 서비스의 메모리에, 하나 이상의 리소스를 생성하고, 상기 하나 이상의 네트워크 디바이스 각각의 연관된 식별자들, 및 상기 하나 이상의 네트워크 디바이스 각각의 연관된 데이터 제어 정책을 포함하는, 상기 하나 이상의 네트워크 디바이스 각각에 관한 상기 전자 프로파일에 포함된 정보를 상기 하나 이상의 리소스 내에 저장하는 단계;
상기 통신 네트워크에 접속된 네트워크 디바이스로부터, 상기 서비스의 하나 이상의 데이터 리소스에 대한 동작을 수행하라는 전자적 요청을 수신하는 단계 - 상기 요청은 상기 요청 디바이스의 제1 식별자 및 상기 요청 디바이스가 동작을 수행하라고 요청하는 하나 이상의 데이터 리소스를 포함함 -;
상기 저장된 전자 프로파일에 기반하여, 상기 요청 디바이스의 상기 제1 식별자가 상기 전자 프로파일 내의 하나 이상의 디바이스 중 하나의 디바이스의 연관된 식별자와 일치하는 것으로 결정하는 단계;
상기 요청 디바이스의 상기 식별자가 상기 전자 프로파일 내의 디바이스들 중 하나의 디바이스의 연관된 식별자와 일치하고, 상기 요청에 포함된 데이터의 유형이 상기 디바이스의 연관된 데이터 제어 정책의 스키마와 일치한다고 결정하고, 상기 결정에 기반하여, 상기 데이터 리소스 내에 상기 데이터를 저장하는 단계를 포함하는, 방법. - 제13항에 있어서,
상기 데이터 제어 정책은 디바이스가 하나 이상의 데이터 저장 리소스에서 구성할 수 있는 최대 수명에 대한 제한을 더 포함하는, 방법. - 제13항에 있어서,
상기 전자 프로파일은 한 명 이상의 허가된 사용자; 하나 이상의 선택된 서비스 등록 선택권; 하나 이상의 지정된 액세스 권한; 및 하나 이상의 서비스 등록 유효기간 중 적어도 하나를 더 포함하는, 방법. - 제13항에 있어서,
상기 방법은,
상기 디바이스의 식별자를 결정하는 단계; 및
상기 요청 디바이스가 상기 동작을 수행하는 것을 방지하는 단계를 더 포함하는, 방법. - 제13항에 있어서,
상기 전자 프로파일은 상기 통신 네트워크에서의 등록 기능으로부터 수신되는, 방법. - 제13항에 있어서,
상기 서비스는 IoT 서비스들을 위한 서비스 계층에 있는, 방법. - 제18항에 있어서,
상기 서비스 계층은 ETSI/oneM2M 표준들에 따라 정의되는, 방법. - 제13항에 있어서,
상기 하나 이상의 리소스 각각은 RESTful 메소드들을 통해 조작될 수 있는 표현을 갖는 리소스 지향 아키텍처(ROA) 내의 고유하게 어드레스 가능한 요소인, 방법.
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201762556161P | 2017-09-08 | 2017-09-08 | |
US62/556,161 | 2017-09-08 | ||
PCT/US2018/049893 WO2019051187A1 (en) | 2017-09-08 | 2018-09-07 | AUTOMATED REGISTRATION TO A SERVICE IN A MACHINE MACHINE COMMUNICATION NETWORK |
KR1020207006560A KR102492203B1 (ko) | 2017-09-08 | 2018-09-07 | 기기간 통신 네트워크에서의 자동화된 서비스 등록 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020207006560A Division KR102492203B1 (ko) | 2017-09-08 | 2018-09-07 | 기기간 통신 네트워크에서의 자동화된 서비스 등록 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20230016034A true KR20230016034A (ko) | 2023-01-31 |
KR102646526B1 KR102646526B1 (ko) | 2024-03-13 |
Family
ID=63963372
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020237002417A KR102646526B1 (ko) | 2017-09-08 | 2018-09-07 | 기기간 통신 네트워크에서의 자동화된 서비스 등록 |
KR1020207006560A KR102492203B1 (ko) | 2017-09-08 | 2018-09-07 | 기기간 통신 네트워크에서의 자동화된 서비스 등록 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020207006560A KR102492203B1 (ko) | 2017-09-08 | 2018-09-07 | 기기간 통신 네트워크에서의 자동화된 서비스 등록 |
Country Status (6)
Country | Link |
---|---|
US (3) | US11265353B2 (ko) |
EP (2) | EP3944594A1 (ko) |
JP (2) | JP7179836B2 (ko) |
KR (2) | KR102646526B1 (ko) |
CN (2) | CN116074792A (ko) |
WO (1) | WO2019051187A1 (ko) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3944594A1 (en) | 2017-09-08 | 2022-01-26 | Convida Wireless, LLC | Automated service enrollment in a machine-to-machine communications network |
WO2019060758A1 (en) * | 2017-09-22 | 2019-03-28 | Intel Corporation | DEVICE MANAGEMENT SERVICES BASED ON NON-REST MESSAGING |
CN109756450B (zh) * | 2017-11-03 | 2021-06-15 | 华为技术有限公司 | 一种物联网通信的方法、装置、系统和存储介质 |
US11689414B2 (en) * | 2017-11-10 | 2023-06-27 | International Business Machines Corporation | Accessing gateway management console |
US10743171B2 (en) * | 2018-09-14 | 2020-08-11 | Aferno, Inc. | Apparatus and method for registering and associating internet of things (IoT) devices with anonymous IoT device accounts |
KR20200079776A (ko) * | 2018-12-26 | 2020-07-06 | 펜타시큐리티시스템 주식회사 | oneM2M 환경에서 하드웨어 보안 모듈을 이용한 인증 방법 및 장치 |
US11375367B2 (en) * | 2019-05-07 | 2022-06-28 | Verizon Patent And Licensing Inc. | System and method for deriving a profile for a target endpoint device |
CN115968543A (zh) * | 2020-10-26 | 2023-04-14 | Oppo广东移动通信有限公司 | 资源映射方法、装置、设备及存储介质 |
CN113067890B (zh) * | 2021-04-07 | 2022-08-19 | 武汉光庭信息技术股份有限公司 | 一种适用于智能座舱的动态注册服务方法及智能座舱 |
TWI835043B (zh) * | 2021-12-29 | 2024-03-11 | 龍華科技大學 | 應用生物辨識於工業物聯網的安全認證方法及系統 |
WO2023233946A1 (ja) * | 2022-05-31 | 2023-12-07 | ソニーグループ株式会社 | 情報処理方法及び情報処理装置 |
WO2024071803A1 (ko) * | 2022-09-26 | 2024-04-04 | 세종대학교 산학협력단 | 무설정 네트워킹 기술 기반 사물인터넷 장치 검색 및 등록을 위한 방법 및 장치 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010088075A1 (en) * | 2009-01-28 | 2010-08-05 | Headwater Partners I Llc | Verifiable device assisted service usage billing with integrated accounting, mediation accounting, and multi-account |
WO2015080461A1 (ko) * | 2013-11-29 | 2015-06-04 | 주식회사 케이티 | M2m 환경에서 사용 가능한 장치를 검색하는 방법 및 장치 |
WO2016109479A1 (en) * | 2014-12-29 | 2016-07-07 | Api Intellectual Property Holdings, Llc | Processes for producing pharmaceutical excipients from lignocellulosic biomass, and pharmaceutical excipients obtained therefrom |
WO2017004391A1 (en) * | 2015-07-02 | 2017-01-05 | Convida Wireless, Llc | Content security at service layer |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006309737A (ja) | 2005-03-28 | 2006-11-09 | Ntt Communications Kk | 開示情報提示装置、個人特定度算出装置、id度取得装置、アクセス制御システム、開示情報提示方法、個人特定度算出方法、id度取得方法、及びプログラム |
US20060235973A1 (en) * | 2005-04-14 | 2006-10-19 | Alcatel | Network services infrastructure systems and methods |
JP2009003700A (ja) | 2007-06-21 | 2009-01-08 | Tachibana Eletech Co Ltd | アプリケーション所定処理許可プログラム |
EP2454870B1 (en) | 2009-07-15 | 2013-09-04 | Telefonaktiebolaget LM Ericsson (publ) | Support in hss for emergency telecommunication services |
KR101772412B1 (ko) * | 2010-03-09 | 2017-08-29 | 인터디지탈 패튼 홀딩스, 인크 | 머신-투-머신 통신을 지원하는 방법 및 장치 |
US9450928B2 (en) | 2010-06-10 | 2016-09-20 | Gemalto Sa | Secure registration of group of clients using single registration procedure |
CN102137105B (zh) * | 2011-03-11 | 2012-11-07 | 华为技术有限公司 | 机器通信的私密性保护方法、系统和机器通信业务管理实体及相关设备 |
US20140289366A1 (en) * | 2013-03-20 | 2014-09-25 | Korea Advanced Institute Of Science And Technology | Service providing method and system for instance hosting |
CN104104528A (zh) * | 2013-04-03 | 2014-10-15 | 株式会社日立制作所 | 用于m2m平台的注册管理装置及注册管理方法 |
KR101830887B1 (ko) * | 2013-09-20 | 2018-02-26 | 콘비다 와이어리스, 엘엘씨 | 근접성 서비스 및 사물 인터넷 서비스를 위한 조인트 등록 및 등록 해제 방법 |
US10182351B2 (en) | 2013-11-29 | 2019-01-15 | Lg Electronics Inc. | Method for service subscription resource-based authentication in wireless communication system |
US20170230350A1 (en) | 2014-05-29 | 2017-08-10 | Tecteco Security Systems, S.L. | Network element and method for improved user authentication in communication networks |
WO2015191965A2 (en) * | 2014-06-13 | 2015-12-17 | Convida Wireless, Llc | Automated service profiling and orchestration |
US10554486B2 (en) * | 2014-09-26 | 2020-02-04 | Microsoft Technology Licensing, Llc | Multi-enrollments of a computing device into configuration sources |
CN107005571B (zh) * | 2014-11-14 | 2020-08-18 | 康维达无线有限责任公司 | 基于权限的资源和服务发现 |
CN107211236B (zh) | 2014-12-29 | 2020-10-27 | 康维达无线有限责任公司 | 服务层的资源链路管理设备及方法 |
KR102001753B1 (ko) * | 2015-03-16 | 2019-10-01 | 콘비다 와이어리스, 엘엘씨 | 공개 키잉 메커니즘들을 사용한 서비스 계층에서의 종단간 인증 |
KR20180048845A (ko) | 2015-09-01 | 2018-05-10 | 콘비다 와이어리스, 엘엘씨 | 서비스 계층 등록 |
WO2018067947A1 (en) * | 2016-10-06 | 2018-04-12 | Convida Wireless, Llc | Profile based content and services |
US10637957B2 (en) * | 2016-12-15 | 2020-04-28 | Vmware, Inc. | Dynamic runtime interface for device management |
US10448449B2 (en) * | 2017-07-13 | 2019-10-15 | Oracle International Corporation | Methods, systems, and computer readable media for dynamically provisioning session timeout information in a communications network |
EP3944594A1 (en) * | 2017-09-08 | 2022-01-26 | Convida Wireless, LLC | Automated service enrollment in a machine-to-machine communications network |
-
2018
- 2018-09-07 EP EP21192879.1A patent/EP3944594A1/en active Pending
- 2018-09-07 JP JP2020513621A patent/JP7179836B2/ja active Active
- 2018-09-07 CN CN202310186783.6A patent/CN116074792A/zh active Pending
- 2018-09-07 KR KR1020237002417A patent/KR102646526B1/ko active IP Right Grant
- 2018-09-07 KR KR1020207006560A patent/KR102492203B1/ko active IP Right Grant
- 2018-09-07 CN CN201880053142.0A patent/CN111034156B/zh active Active
- 2018-09-07 US US16/644,332 patent/US11265353B2/en active Active
- 2018-09-07 WO PCT/US2018/049893 patent/WO2019051187A1/en unknown
- 2018-09-07 EP EP18792573.0A patent/EP3679709B1/en active Active
-
2022
- 2022-01-19 US US17/578,521 patent/US11683353B2/en active Active
- 2022-11-16 JP JP2022183231A patent/JP7474302B2/ja active Active
-
2023
- 2023-05-05 US US18/312,616 patent/US12041097B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010088075A1 (en) * | 2009-01-28 | 2010-08-05 | Headwater Partners I Llc | Verifiable device assisted service usage billing with integrated accounting, mediation accounting, and multi-account |
WO2015080461A1 (ko) * | 2013-11-29 | 2015-06-04 | 주식회사 케이티 | M2m 환경에서 사용 가능한 장치를 검색하는 방법 및 장치 |
WO2016109479A1 (en) * | 2014-12-29 | 2016-07-07 | Api Intellectual Property Holdings, Llc | Processes for producing pharmaceutical excipients from lignocellulosic biomass, and pharmaceutical excipients obtained therefrom |
WO2017004391A1 (en) * | 2015-07-02 | 2017-01-05 | Convida Wireless, Llc | Content security at service layer |
Also Published As
Publication number | Publication date |
---|---|
US20220141262A1 (en) | 2022-05-05 |
CN111034156B (zh) | 2023-02-17 |
KR20200044833A (ko) | 2020-04-29 |
CN111034156A (zh) | 2020-04-17 |
EP3679709A1 (en) | 2020-07-15 |
JP2020533676A (ja) | 2020-11-19 |
US12041097B2 (en) | 2024-07-16 |
WO2019051187A1 (en) | 2019-03-14 |
US11265353B2 (en) | 2022-03-01 |
EP3944594A1 (en) | 2022-01-26 |
US11683353B2 (en) | 2023-06-20 |
JP7179836B2 (ja) | 2022-11-29 |
US20230353604A1 (en) | 2023-11-02 |
US20200195696A1 (en) | 2020-06-18 |
CN116074792A (zh) | 2023-05-05 |
JP7474302B2 (ja) | 2024-04-24 |
KR102646526B1 (ko) | 2024-03-13 |
EP3679709B1 (en) | 2021-11-03 |
JP2023029838A (ja) | 2023-03-07 |
KR102492203B1 (ko) | 2023-01-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102492203B1 (ko) | 기기간 통신 네트워크에서의 자동화된 서비스 등록 | |
US11102213B2 (en) | Permission based resource and service discovery | |
JP7090603B2 (ja) | 汎用インターワーキングおよび拡張性のためのサービス層リソース管理 | |
KR101984413B1 (ko) | 서비스 레이어를 통해 제3자 서비스들에 대한 액세스를 가능하게 하는 시스템들 및 방법들 | |
CN106471465B (zh) | 服务启用器功能 | |
KR102627115B1 (ko) | Iot/m2m 서비스 계층에서의 데이터 또는 서비스들에 대한 컨텍스트 인식 허가 | |
US11792290B2 (en) | Methods to enable automated M2M/IoT product management services |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A107 | Divisional application of patent | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right |