KR20160106136A - 생성된 그래머의 복잡도를 측정함으로써 디바이스들의 현행 네트워크의 홀리스틱 값을 정량화하는 방법들 및 장치들 - Google Patents

생성된 그래머의 복잡도를 측정함으로써 디바이스들의 현행 네트워크의 홀리스틱 값을 정량화하는 방법들 및 장치들 Download PDF

Info

Publication number
KR20160106136A
KR20160106136A KR1020167021420A KR20167021420A KR20160106136A KR 20160106136 A KR20160106136 A KR 20160106136A KR 1020167021420 A KR1020167021420 A KR 1020167021420A KR 20167021420 A KR20167021420 A KR 20167021420A KR 20160106136 A KR20160106136 A KR 20160106136A
Authority
KR
South Korea
Prior art keywords
devices
interactions
iot
grammar
device list
Prior art date
Application number
KR1020167021420A
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 KR20160106136A publication Critical patent/KR20160106136A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F17/27
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N99/005
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/06Notations for structuring of protocol data, e.g. abstract syntax notation one [ASN.1]
    • H04W4/005
    • 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]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3476Data logging
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16YINFORMATION AND COMMUNICATION TECHNOLOGY SPECIALLY ADAPTED FOR THE INTERNET OF THINGS [IoT]
    • G16Y10/00Economic sectors
    • G16Y10/75Information technology; Communication
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16YINFORMATION AND COMMUNICATION TECHNOLOGY SPECIALLY ADAPTED FOR THE INTERNET OF THINGS [IoT]
    • G16Y20/00Information sensed or collected by the things
    • G16Y20/20Information sensed or collected by the things relating to the thing itself

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • Quality & Reliability (AREA)
  • Computer Security & Cryptography (AREA)
  • Telephonic Communication Services (AREA)
  • Selective Calling Equipment (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)

Abstract

네트워크에서의 복수의 디바이스들 간의 상호작용들을 설명하기 위한 그래머를 구성하는 방법 및 장치가 개시된다. 일 양태는, 디바이스의 네트워크 인터페이스에 의해 복수의 디바이스들 각각의 디바이스 능력들을 수신하고, 디바이스의 감소된 디바이스 리스트 생성기에 의해 디바이스 능력들에 기초하여 복수의 디바이스들의 그루핑들을 나타내는 감소된 디바이스 리스트를 생성하고, 디바이스의 상호작용 시퀀스 모델러에 의해 감소된 디바이스 리스트를 사용하여 복수의 디바이스들 간의 상호작용들의 하나 이상의 시퀀스들을 모델링하고, 디바이스의 그래머 구성 모듈에 의해 모델링된 상호작용들의 하나 이상의 시퀀스들에 기초하여 그래머를 구성하며, 이 그래머를 디바이스의 메모리에 저장한다.

Description

생성된 그래머의 복잡도를 측정함으로써 디바이스들의 현행 네트워크의 홀리스틱 값을 정량화하는 방법들 및 장치들{METHODS AND APPARATUSES FOR QUANTIFYING THE HOLISTIC VALUE OF AN EXISTING NETWORK OF DEVICES BY MEASURING THE COMPLEXITY OF A GENERATED GRAMMAR}
관련 출원들의 상호 참조
본 출원은 2014년 1월 10일자에 출원된, 발명의 명칭이 "METHOD FOR QUANTIFYING THE HOLISTIC VALUE OF AN EXISTING NETWORK OF DEVICES BY MEASURING THE COMPLEXITY OF A GENERATED GRAMMAR" 인 미국 가출원 제 61/926,162 호의 우선권을 주장하며, 이것은 그 양수인에게 양도되어 있으며 그 전체가 참조로서 본원에 명확하게 포함된다.
본 개시물은 생성된 그래머의 복잡도를 측정함으로써 디바이스들의 현행 네트워크의 홀리스틱 값을 정량화하는 것에 관한 것이다.
인터넷은 표준 인터넷 프로토콜 슈트 (예를 들어, 송신 제어 프로토콜 (Transmission Control Protocol; TCP) 및 인터넷 프로토콜 (Internet Protocol; IP) 을 사용하여 서로 통신하는 상호접속된 컴퓨터들 및 컴퓨터 네트워크들의 글로벌 시스템이다. 사물 인터넷 (IoT) 은 컴퓨터들 및 컴퓨터 네트워크들 뿐만 아니라 일상의 객체들이 IoT 통신 네트워크 (예를 들어, 애드-혹 시스템 또는 인터넷) 를 통해 판독 가능, 인식 가능, 로케이트 가능, 어드레싱 가능, 및 제어 가능해질 수 있다는 아이디어에 기초한다.
다수의 시장 트렌드들은 IoT 디바이스들의 개발을 추진하고 있다. 예를 들어, 증가하는 에너지 비용들은 스마트 그리드들에서의 정부의 전략적 투자들 및 미래의 소비, 예컨대 전기 차량들 및 공공 충전소에 대한 지원을 추진하고 있다. 증가하는 헬스 케어 비용들 및 노령 인구들은 원격/접속된 헬스 케어 및 피트니스 서비스들에 대한 개발을 추진하고 있다. 홈에서의 기술적 혁명은, 'N' 플레이 (예를 들어, 데이터, 음성, 비디오, 보안, 에너지 관리 등) 를 마켓팅하고 홈 네트워크를 확장하는 서비스 제공자들에 의한 통합을 포함하는, 새로운 "스마트" 서비스들에 대한 개발을 추진하고 있다. 빌딩들은 엔터프라이즈 시설들에 대한 운영 비용들을 감소시키기 위한 수단으로서 보다 스마트하고 보다 편리해지고 있다.
IoT 에 대한 다수의 주요 애플리케이션들이 존재한다. 예를 들어, 스마트 그리드들 및 에너지 관리의 영역에서, 공익 기업들은 가정들 및 사업장들로의 에너지 전달을 최적화할 수 있으면서 소비자들은 에너지 사용을 더 잘 관리할 수 있다. 가정 및 빌딩 자동화의 영역에서, 스마트 홈들 및 빌딩들은, 어플라이언스들에서부터 플러그-인 전기 차량 (PEV) 보안 시스템들까지, 홈 또는 오피스에서 가상으로 임의의 디바이스 또는 시스템을 통해 집중된 제어를 가질 수 있다. 자산 추적의 분야에서, 엔터프라이즈, 병원, 공장, 및 다른 큰 조직체들은 고가 장비, 환자, 차량 등의 로케이션들을 정확하게 추적할 수 있다. 건강 및 웰니스의 영역에서, 의사들은 환자들의 건강을 원격으로 모니터링할 수 있으면서 사람들은 피트니스 루틴들의 진행을 추적할 수 있다.
다음은 본원에 개시된 메커니즘들과 연관된 하나 이상의 양태들 및/또는 실시형태들에 관련된 간략화된 요약을 나타낸다. 이와 같이, 다음의 요약은 모든 고려되는 양태들 및/또는 실시형태들의 광범위한 개요가 아니며, 모든 양태들 및/또는 실시형태들에 관련된 주요한 또는 중요한 엘리먼트들을 식별하는 것으로 간주된 것도 아니고 임의의 특정 양태 및/또는 실시형태들과 연관된 범위를 기술하는 것으로 간주된 것도 아니다. 따라서, 다음의 요약은 이하에 제시된 상세한 설명을 선행하도록 간략화된 형태로 본원에 개시된 메커니즘들에 관련된 하나 이상의 양태들 및/또는 실시형태들에 관련된 소정 개념들을 나타내기 위한 목적 만을 갖는다.
본 개시물은 네트워크에서의 복수의 디바이스들 간의 상호작용들을 설명하기 위해 그래머를 구성하는 것에 관련된다. 네트워크에서의 복수의 디바이스들 간의 상호작용들을 설명하기 위한 그래머를 구성하는 방법은, 디바이스의 네트워크 인터페이스에 의해, 복수의 디바이스들 각각의 디바이스 능력들을 수신하는 단계, 디바이스의 감소된 디바이스 리스트 생성기에 의해, 디바이스 능력들에 기초하여 복수의 디바이스들의 그루핑들을 나타내는 감소된 디바이스 리스트를 생성하는 단계, 디바이스의 상호작용 시퀀스 모델러에 의해, 감소된 디바이스 리스트를 사용하여 복수의 디바이스들 간의 상호작용들의 하나 이상의 시퀀스들을 모델링하는 단계, 디바이스의 그래머 구성 모듈에 의해, 모델링된 상호작용들의 하나 이상의 시퀀스들에 기초하여 그래머를 구성하는 단계, 및 그래머를 디바이스의 메모리에 저장하는 단계를 포함한다.
네트워크에서의 복수의 디바이스들 간의 상호작용들을 설명하기 위한 그래머를 구성하기 위한 장치는, 복수의 디바이스들 각각의 디바이스 능력들을 수신하도록 구성된 네트워크 인터페이스, 디바이스 능력들에 기초하여 복수의 디바이스들의 그루핑들을 나타내는 감소된 디바이스 리스트를 생성하도록 구성된 감소된 디바이스 리스트 생성기, 감소된 디바이스 리스트를 사용하여 복수의 디바이스들 간의 상호작용들의 하나 이상의 시퀀스들을 모델링하도록 구성된 상호작용 시퀀스 모델러, 모델링된 상호작용들의 하나 이상의 시퀀스들에 기초하여 그래머를 구성하도록 구성된 그래머 구성 모듈, 및 그래머를 저장하도록 구성된 메모리를 포함한다.
네트워크에서의 복수의 디바이스들 간의 상호작용들을 설명하기 위한 그래머를 구성하기 위한 장치로서, 디바이스의 네트워크 인터페이스에 의해, 복수의 디바이스들 각각의 디바이스 능력들을 수신하는 수단, 디바이스의 감소된 디바이스 리스트 생성기에 의해, 디바이스 능력들에 기초하여 복수의 디바이스들의 그루핑들을 나타내는 감소된 디바이스 리스트를 생성하는 수단, 디바이스의 상호작용 시퀀스 모델러에 의해, 감소된 디바이스 리스트를 사용하여 복수의 디바이스들 간의 상호작용들의 하나 이상의 시퀀스들을 모델링하는 수단, 디바이스의 그래머 구성 모듈에 의해, 모델링된 상호작용들의 하나 이상의 시퀀스들에 기초하여 그래머를 구성하는 수단, 및 그래머를 장치의 메모리에 저장하는 수단을 포함한다.
네트워크에서의 복수의 디바이스들 간의 상호작용들을 설명하기 위한 그래머를 구성하기 위한 장치는, 디바이스의 네트워크 인터페이스에 의해, 복수의 디바이스들 각각의 디바이스 능력들을 수신하도록 구성된 로직, 디바이스의 감소된 디바이스 리스트 생성기에 의해, 디바이스 능력들에 기초하여 복수의 디바이스들의 그루핑들을 나타내는 감소된 디바이스 리스트를 생성하도록 구성된 로직, 디바이스의 상호작용 시퀀스 모델러에 의해, 감소된 디바이스 리스트를 사용하여 복수의 디바이스들 간의 상호작용들의 하나 이상의 시퀀스들을 모델링하도록 구성된 로직, 디바이스의 그래머 구성 모듈에 의해, 모델링된 상호작용들의 하나 이상의 시퀀스들에 기초하여 그래머를 구성하도록 구성된 로직, 및 그래머를 장치의 메모리에 저장하도록 구성된 로직을 포함한다.
네트워크에서의 복수의 디바이스들 간의 상호작용들을 설명하기 위한 그래머를 구성하기 위한 비일시적 컴퓨터 판독가능 매체는, 디바이스의 네트워크 인터페이스에 의해, 복수의 디바이스들 각각의 디바이스 능력들을 수신하기 위한 적어도 하나의 명령, 디바이스의 감소된 디바이스 리스트 생성기에 의해, 디바이스 능력들에 기초하여 복수의 디바이스들의 그루핑들을 나타내는 감소된 디바이스 리스트를 생성하기 위한 적어도 하나의 명령, 디바이스의 상호작용 시퀀스 모델러에 의해, 감소된 디바이스 리스트를 사용하여 복수의 디바이스들 간의 상호작용들의 하나 이상의 시퀀스들을 모델링하기 위한 적어도 하나의 명령, 디바이스의 그래머 구성 모듈에 의해, 모델링된 상호작용들의 하나 이상의 시퀀스들에 기초하여 그래머를 구성하기 위한 적어도 하나의 명령, 및 그래머를 디바이스의 메모리에 저장하기 위한 적어도 하나의 명령을 포함한다.
본원에 개시된 메커니즘들과 연관된 다른 목적들 및 이점들은 첨부한 도면들 및 상세한 설명에 기초하여 당업자에게 명백해질 것이다.
본 개시물의 양태들에 대한 더 완전한 이해 및 그 많은 부수적인 이점들은, 본 개시물의 제한이 아닌 예시를 위해서만 제시되는 첨부 도면들과 관련되어 고려될 때, 다음의 상세한 설명을 참조함으로써 더 잘 이해되는 바처럼 용이하게 획득될 것이다.
도 1a 는 본 개시물의 일 양태에 따른 무선 통신 시스템의 하이 레벨 시스템 아키텍처를 예시한다.
도 1b 는 본 개시물의 다른 양태에 따른 무선 통신 시스템의 하이 레벨 시스템 아키텍처를 예시한다.
도 1c 는 본 개시물의 일 양태에 따른 무선 통신 시스템의 하이 레벨 시스템 아키텍처를 예시한다.
도 1d 는 본 개시물의 일 양태에 따른 무선 통신 시스템의 하이 레벨 시스템 아키텍처를 예시한다.
도 1e 는 본 개시물의 일 양태에 따른 무선 통신 시스템의 하이 레벨 시스템 아키텍처를 예시한다.
도 2a 는 본 개시물의 양태들에 따른 예시적인 사물 인터넷 (IoT) 디바이스를 예시하는 한편, 도 2b 는 본 개시물의 양태들에 따른 예시적인 패시브 IoT 디바이스를 예시한다.
도 3 은 본 개시물의 일 양태에 따른 기능을 수행하도록 구성된 로직을 포함하는 통신 디바이스를 예시한다.
도 4a 는 본 개시물의 다양한 양태들에 따른 예시적인 서버를 예시한다.
도 4b 는 본 개시물의 다양한 양태들에 따라 도 4a 에 예시된 서버의 예시적인 프로세서를 예시한다.
도 5a 내지 도 5d 는 스캐터그램을 상태 머신으로 변환하는 예를 예시한다.
도 6a 는 상호작용들의 그래머를 구성하는데 사용될 수 있는 제 1 IoT 네트워크에서의 디바이스들 간의 상호작용들의 예시적인 시퀀스를 예시한다.
도 6b 는 상호작용들의 그래머를 구성하는데 사용될 수 있는 제 2 IoT 네트워크에서의 디바이스들 간의 상호작용들의 예시적인 시퀀스를 예시한다.
도 7 은 제 1 사용자, 제 2 사용자, 및 제 3 사용자 간의 근접도 검출들의 예시적인 시퀀스를 예시한다.
도 8 은 네트워크에서의 복수의 디바이스들 간의 상호작용들을 설명하기 위해 그래머를 구성하는 예시적인 플로우차트를 예시한다.
도 9 는 본원에 교시된 바와 같은 통신을 지원하도록 구성된 장치의 여러 샘플 양태들의 단순화된 블록도이다.
본 개시물은 네트워크 내의 복수의 디바이스들 간의 상호작용들을 설명하기 위해 그래머를 구성하는 것에 관련된다. 일 양태는, 디바이스의 네트워크 인터페이스에 의해, 복수의 디바이스들 각각의 디바이스 능력들을 수신하고, 디바이스의 감소된 디바이스 리스트 생성기에 의해, 디바이스 능력들에 기초하여 복수의 디바이스들의 그루핑들을 나타내는 감소된 디바이스 리스트를 생성하고, 디바이스의 상호작용 시퀀스 모델러에 의해, 감소된 디바이스 리스트를 사용하여 복수의 디바이스들 간의 상호작용들의 하나 이상의 시퀀스들을 모델링하고, 디바이스의 그래머 구성 모듈에 의해, 모델링된 상호작용들의 하나 이상의 시퀀스들에 기초하여 그래머를 구성하며, 그래머를 디바이스의 메모리에 저장한다.
이들 및 다른 양태들은 생성된 그래머의 복잡도를 측정함으로써 디바이스들의 현행 네트워크의 홀리스틱 값 (holistic value) 을 정량화하는 예시적인 실시형태들에 관련된 특정 예들을 나타내기 위해 다음의 설명 및 관련 도면들에 개시된다. 대안의 실시형태들은 본 개시물을 판독할 때 당업자에게 명백할 것이고, 본 개시물의 범위 또는 사상으로부터 벗어남 없이 구성 및 실시될 수도 있다. 부가적으로, 잘-알려진 엘리먼트들은 본원에 개시된 양태들 및 실시형태들의 관련 상세들을 모호하게 하지 않기 위해서 상세히 설명되지 않을 것이고 또는 생략될 수도 있다.
단어 "예시적인"은 본원에서 "예, 경우, 또는 예시로서 역할을 하는" 것을 의미하기 위해 사용된다. 본원에서 "예시적인"으로서 설명된 임의의 실시형태는 반드시 다른 실시형태들에 비해 바람직하거나 또는 유리한 것으로서 해석될 필요는 없다. 마찬가지로, 용어 "실시형태들" 은 모든 실시형태들이 논의된 특성, 이점, 또는 동작의 모드를 포함하는 것을 요구하지 않는다.
본원에 사용된 전문용어는 특정한 실시형태들 만을 설명하며 본원에 개시된 임의의 실시형태들에 제한하도록 구성되지 않아야 한다. 본원에서 사용된 바와 같이, 단수 형태들 "a", "an", 및 "the" 는, 문맥이 달리 명확히 나타내지 않는 한 복수 형태들도 포함하도록 의도된다. 용어들 "포함하다", "포함하는", "포함시키다", 및/또는 "포함시키는" 은, 본원에서 사용되는 경우, 언급된 특성들, 정수 (integer) 들, 단계들, 동작들, 엘리먼트들, 및/또는 컴포넌트들의 존재를 명시하지만, 하나 이상의 다른 특성들, 정수들, 단계들, 동작들, 엘리먼트들, 컴포넌트들, 및/또는 그 그룹들의 존재 또는 추가를 배제하지는 않음이 또한 이해될 것이다.
또한, 많은 양태들은 예를 들어, 컴퓨팅 디바이스의 엘리먼트들에 의해 수행될 액션들의 시퀀스들에 관하여 설명된다. 본원에 설명된 다양한 액션들은 특정 회로들 (예를 들어, 주문형 집적 회로 (ASIC)) 에 의해, 하나 이상의 프로세서들에 의해 실행되는 프로그램 명령들에 의해, 또는 양자 모두의 조합에 의해 수행될 수 있다. 부가적으로, 본원에 설명된 액션들의 이들 시퀀스는 실행 시에, 연관된 프로세서로 하여금 본원에 설명된 기능을 수행하게 하는 대응하는 컴퓨터 명령들의 세트가 저장된 임의의 유형의 컴퓨터 판독가능 저장 매체 내에서 완전히 구현되는 것으로 고려될 수 있다. 따라서, 본 개시물의 다양한 양태들은 다수의 상이한 형태들로 구현될 수도 있으며, 다수의 상이한 형태들 모두는 청구된 청구물의 범위 내에 있는 것으로 고려된다. 또한, 본원에 설명된 양태들 각각에 있어서, 임의의 이러한 양태들의 대응하는 형태는, 예를 들어 설명된 액션을 수행하도록 "구성된 로직" 으로서 본원에서 설명될 수도 있다.
본원에 사용된 바와 같이, 용어 "사물 인터넷 디바이스" (또는 "IoT 디바이스") 는 어드레싱 가능한 인터페이스 (예를 들어, 인터넷 프로토콜 (IP) 어드레스, 블루투스 식별자 (ID), 근-거리 통신 (NFC) ID 등) 를 갖고 유선 또는 무선 접속을 통해 하나 이상의 다른 디바이스들로 정보를 송신할 수 있는 임의의 객체 (예를 들어, 어플라이언스, 센서 등) 를 지칭할 수도 있다. IoT 디바이스는 패시브 통신 인터페이스, 예컨대 QR (quick response) 코드, 무선-주파수 식별 (radio-frequency identification; RFID) 태그, NFC 태그 등, 또는 액티브 통신 인터페이스, 예컨대 모뎀, 트랜시버, 송신기-수신기 등을 가질 수도 있다. IoT 디바이스는 중앙 처리 장치 (CPU), 마이크로프로세서, ASIC 등에 임베딩되고/되거나 이에 의해 제어/모니터링될 수 있고, 로컬 애드-혹 네트워크 또는 인터넷과 같은 IoT 네트워크에 접속하기 위해 구성될 수 있는 속성들의 특정 세트 (예를 들어, 디바이스 상태 또는 스테이터스, 예컨대 IoT 디바이스 온 또는 오프, 개방 또는 폐쇄, 유휴 또는 활성, 태스크 실행을 위해 이용 가능 또는 비지, 등, 냉각 또는 가열 기능, 환경 모니터링 또는 레코딩 기능, 발광 기능, 발음 (sound-emitting) 기능 등) 를 가질 수 있다. 예를 들어, IoT 디바이스들은, 디바이스들에 IoT 네트워크와 통신하기 위해 어드레싱 가능한 통신 인터페이스가 구비되는 한 냉장고, 토스터, 오븐, 전자레인지, 냉동고, 식기세척기, 접시, 수공구, 세탁기, 의류 건조기, 퍼니스 (furnace), 에어 컨디셔너, 서모스탯, 텔리버전, 조명 기구, 진공 청소기, 스프링클러, 전시계 (electricity meter), 가스 미터 등을 포함하지만 이에 제한되지는 않는다. IoT 디바이스들은 또한, 셀 폰들, 데스크톱 컴퓨터들, 랩톱 컴퓨터들, 태블릿 컴퓨터들, 개인 휴대 정보 단말들 (PDAs) 등을 포함할 수도 있다. 따라서, IoT 네트워크는 통상적으로 인터넷-접속성을 갖지 않는 디바이스들 (예를 들어, 식기세척기) 에 추가하여 "레거시" 인터넷-액세스 가능 디바이스들 (예를 들어, 랩톱 또는 데스크톱 컴퓨터들, 셀 폰들 등) 의 조합으로 이루어질 수도 있다.
도 1a 는 본 개시물의 양태에 따른 무선 통신 시스템 (100A) 의 하이 레벨 시스템 아키텍처를 예시한다. 무선 통신 시스템 (100A) 은 텔레비전 (110), 외기 공조 유닛 (112), 서모스탯 (114), 냉장고 (116), 및 세탁 및 건조기 (118) 를 포함하는 복수의 IoT 디바이스들을 포함한다.
도 1a 를 참조하면, IoT 디바이스들 (110-118) 은 무선 인터페이스 (108) 및 직접 유선 접속 (109) 과 같이 도 1a 에 도시된 물리적 통신 인터페이스 또는 계층을 통해 액세스 네트워크 (예를 들어, 액세스 포인트 (125)) 와 통신하도록 구성된다. 무선 인터페이스 (108) 는 무선 인터넷 프로토콜 (IP), 예컨대 IEEE 802.11 에 따를 수 있다. 도 1a 는 무선 인터페이스 (108) 를 통해 통신하는 IoT 디바이스들 (110-118) 및 직접 유선 접속 (109) 을 통해 통신하는 IoT 디바이스 (118) 를 예시하지만, 각각의 IoT 디바이스는 유선 또는 무선 접속, 또는 양자 모두를 통해 통신할 수도 있다.
인터넷 (175) 은 (편의를 위해 도 1a 에 도시되지 않은) 다수의 라우팅 에이전트들 및 프로세싱 에이전트들을 포함한다. 인터넷 (175) 은 표준 인터넷 프로토콜 슈트 (예를 들어, TCP (Transmission Control Protocol) 및 IP) 를 사용하여 별개의 디바이스들/네트워크들 간에 통신하는 컴퓨터 네트워크들 및 상호접속된 컴퓨터들의 글로벌 시스템이다. TCP/IP 는 어떻게 데이터가 포맷팅되고, 어드레싱되고, 송신되고, 라우팅되어 목적지에서 수신되어야 하는지를 지정하는 단-대-단 접속성을 제공한다.
도 1a 에서, 컴퓨터 (120), 예컨대 데스크톱 또는 퍼스널 컴퓨터 (PC) 는 직접적으로, (예를 들어, 이더넷 접속 또는 Wi-Fi 또는 802.11-기반 네트워크를 통해) 인터넷 (175) 에 접속하는 것으로서 도시된다. 컴퓨터 (120) 는, 일 예에서 (예를 들어, 유선 및 무선 접속성 양자 모두를 갖는 WiFi 라우터에 대해) 액세스 포인트 (125) 그 자체에 대응할 수 있는, 모뎀 또는 라우터로의 직접 접속과 같은, 인터넷 (175) 으로의 유선 접속을 가질 수도 있다. 대안으로, 유선 접속을 통해 액세스 포인트 (125) 및 인터넷 (175) 에 접속되기 보다는, 컴퓨터 (120) 는 무선 인터페이스 (108) 또는 다른 무선 인터페이스를 통해 액세스 포인트 (125) 에 접속될 수 있고, 무선 인터페이스 (108) 를 통해 인터넷 (175) 에 액세스될 수도 있다. 데스크톱 컴퓨터로서 예시되었으나, 컴퓨터 (120) 는 랩톱 컴퓨터, 태블릿 컴퓨터, PDA, 스마트 폰 등일 수도 있다. 컴퓨터 (120) 는 IoT 디바이스일 수도 있고/있거나 IoT 네트워크/그룹, 예컨대 IoT 디바이스들 (110-118) 의 네트워크/그룹을 관리하기 위한 기능을 포함할 수도 있다.
액세스 포인트 (125) 는 예를 들어, FiOS, 케이블 모뎀, 디지털 가입자 라인 (DSL) 모뎀 등과 같은 광 통신 시스템을 통해 인터넷 (175) 에 접속될 수도 있다. 액세스 포인트 (125) 는 표준 인터넷 프로토콜들 (예를 들어, TCP/IP) 을 사용하여 IoT 디바이스들 (110-120) 및 인터넷 (175) 과 통신할 수도 있다.
도 1a 를 참조하면, IoT 서버 (170) 는 인터넷 (175) 에 접속된 것으로서 도시된다. IoT 서버 (170) 는, 복수의 구조적으로 분리된 서버들로서 구현될 수 있거나, 또는 대안으로 단일 서버에 대응할 수도 있다. 일 양태에서, IoT 서버 (170) 는 (점선으로 표기된 바와 같이) 선택적이고, IoT 디바이스들 (110-120) 의 그룹은 피어-투-피어 (P2P) 네트워크일 수도 있다. 이러한 경우에서, IoT 디바이스들 (110-120) 은 무선 인터페이스 (108) 및/또는 직접 유선 접속 (109) 을 통해 직접적으로 서로와 통신할 수 있다. 대안으로, 또는 부가적으로, IoT 디바이스들 (110-120) 중 일부 또는 전부는 무선 인터페이스 (108) 및 직접 유선 접속 (109) 과는 관계 없는 통신 인터페이스로 구성될 수도 있다. 예를 들어, 무선 인터페이스 (108) 가 Wi-Fi 인터페이스에 대응한다면, IoT 디바이스들 (110-120) 중 하나 이상은 서로와 또는 다른 블루투스나 NFC-인에이블드 디바이스들과 직접적으로 통신하기 위해 블루투스 또는 NFC 인터페이스들을 가질 수도 있다.
피어-투-피어 네트워크에서, 서비스 발견 스킴들은 노드들, 그 능력들, 및 그룹 멤버쉽의 존재를 멀티캐스팅할 수 있다. 피어-투-피어 디바이스들은 이 정보에 기초하여 연관들 및 후속의 상호작용들을 확립할 수 있다.
본 개시물의 일 양태에 따르면, 도 1b 는 복수의 IoT 디바이스들을 포함하는 다른 무선 통신 시스템 (100B) 의 하이-레벨 아키텍처를 예시한다. 일반적으로, 도 1b 에 도시된 무선 통신 시스템 (100B) 은, 상기에서 더 상세히 설명되었던 도 1a 에 도시된 무선 통신 시스템 (100A)(예를 들어, 무선 인터페이스 (108) 및/또는 직접 유선 접속 (109) 을 통해 액세스 포인트 (125) 와 통신하도록 구성되는 텔레비전 (110), 외기 공조 유닛 (112), 서모스탯 (114), 냉장고 (116), 및 세척 및 건조기 (118) 를 포함하는 다양한 IoT 디바이스들, 인터넷 (175) 에 직접적으로 접속하고/하거나 액세스 포인트 (125) 를 통해 인터넷 (175) 에 접속하는 컴퓨터 (120), 및 인터넷 (175) 을 통해 액세스 가능한 IoT 서버 (170) 등) 과 동일한 및/또는 실질적으로 유사한 다양한 컴포넌트들을 포함할 수도 있다. 이와 같이, 설명의 간결함 및 용이함을 위해, 도 1b 에 도시된 무선 통신 시스템 (100B) 에서의 소정의 컴포넌트들에 관련한 다양한 상세들은, 동일하거나 유사한 상세들이 도 1a 에 예시된 무선 통신 시스템 (100A) 에 관련하여 위에서 이미 설명되었다는 결과로 본원에서 생략될 수도 있다.
도 1b 를 참조하면, 무선 통신 시스템 (100B) 은 슈퍼바이저 디바이스 (130) 를 포함할 수도 있으며, 이 디바이스는 다르게는 IoT 관리자 (130) 또는 IoT 관리자 디바이스 (130) 로서 지칭될 수도 있다. 이와 같이, 다음의 설명이 용어 "슈퍼바이저 디바이스"(130) 를 사용하는 경우, 당업자는 IoT 관리자, 그룹 오너, 또는 유사한 전문용어에 대한 임의의 참조들이 슈퍼바이저 디바이스 (130) 또는 동일하거나 실질적으로 유사한 기능을 제공하는 다른 물리적 또는 논리 컴포넌트를 지칭할 수도 있다는 것을 인식할 것이다.
일 실시형태에서, 슈퍼바이저 디바이스 (130) 는 일반적으로, 무선 통신 시스템 (100B) 에서의 다양한 다른 컴포넌트들을 관측, 모니터링, 제어, 또는 다르게는 관리할 수도 있다. 예를 들어, 슈퍼바이저 디바이스 (130) 는 무선 인터페이스 (108) 및/또는 직접 유선 접속 (109) 을 통해 액세스 네트워크 (예를 들어, 액세스 포인트 (125)) 와 통신하여, 무선 통신 시스템 (100B) 에서의 다양한 IoT 디바이스들 (110-120) 과 연관된 속성들, 액티비티들, 또는 다른 상태들을 모니터링하거나 관리할 수 있다. 슈퍼바이저 디바이스 (130) 는 인터넷 (175) 및 선택적으로는 IoT 서버 (170) 로의 유선 또는 무선 접속 (점선으로서 도시됨) 을 가질 수도 있다. 슈퍼바이저 디바이스 (130) 는 다양한 IoT 디바이스들 (110-120) 과 연관된 속성들, 액티비티들, 또는 다른 상태들을 추가로 모니터링하거나 관리하는데 사용될 수 있는 인터넷 (175) 및/또는 IoT 서버 (170) 로부터 정보를 획득할 수도 있다. 슈퍼바이저 디바이스 (130) 는 독립형 디바이스 또는 IoT 디바이스들 (110-120) 중 하나, 예컨대 컴퓨터 (120) 일 수도 있다. 슈퍼바이저 디바이스 (130) 는 물리적 디바이스 또는 물리적 디바이스 상에서 실행하는 소프트웨어 애플리케이션일 수도 있다. 슈퍼바이저 디바이스 (130) 는 IoT 디바이스들 (110-120) 과 연관된 모니터링된 속성들, 액티비티들, 또는 다른 상태들에 관련한 정보를 출력하고 입력 정보를 수신하여 그 디바이스들과 연관된 속성들, 액티비티들, 또는 다른 상태들을 제어 또는 다르게는 관리할 수 있다. 따라서, 슈퍼바이저 디바이스 (130) 는 일반적으로, 다양한 컴포넌트들을 포함하고 다양한 유선 및 무선 통신 인터페이스들을 지원하여 무선 통신 시스템 (100B) 에서의 다양한 컴포넌트들을 관측, 모니터링, 제어, 또는 다르게는 관리할 수도 있다.
도 1b 에 도시된 무선 통신 시스템 (100B) 은 무선 통신 시스템 (100B) 에 커플링되거나 다르게는 이 시스템의 일부로 이루어질 수 있는 하나 이상의 (액티브 IoT 디바이스들 (110-120) 과 대조적으로) 패시브 IoT 디바이스들 (105) 을 포함할 수도 있다. 일반적으로, 패시브 IoT 디바이스들 (105) 은 바코드 디바이스들, 블루투스 디바이스들, 무선 주파수 (RF) 디바이스들, RFID 태그 디바이스들, 적외선 (IR) 디바이스들, NFC 태그 디바이스들, 또는 단거리 인터페이스를 통해 질의되는 경우 그 식별자 및 속성들을 다른 디바이스에 제공할 수 있는 임의의 다른 적합한 디바이스를 포함할 수도 있다. 액티브 IoT 디바이스들은 패시브 IoT 디바이스들의 속성들에서의 변화들을 검출, 저장, 통신, 착수 및/또는 등을 할 수도 있다.
예를 들어, 패시브 IoT 디바이스들 (105) 은, 각각 RFID 태그 또는 바코드를 갖는 오렌지 주스의 용기 및 커피 잔을 포함할 수도 있다. 캐비넷 IoT 디바이스 및 냉장고 IoT 디바이스 (116) 는 각각, 커피 잔 및/또는 오렌지 주스의 용기 패시브 IoT 디바이스들 (105) 이 추가 또는 제거된 경우를 검출하도록 RFID 태그 또는 바코드를 판독할 수 있는 적합한 스캐너 또는 판독기를 가질 수도 있다. 캐비넷 IoT 디바이스가 커피 잔 패시브 IoT 디바이스 (105) 의 제거를 검출하는 것 및 냉장고 IoT 디바이스 (116) 가 오렌지 주스의 용기 패시브 IoT 디바이스의 제거를 검출하는 것에 응답하여, 슈퍼바이저 디바이스 (130) 는 캐비넷 IoT 디바이스 및 냉장고 IoT 디바이스 (116) 에서 검출된 액티비티들에 관련한 하나 이상의 신호들을 수신할 수도 있다. 슈퍼바이저 디바이스 (130) 는 그 후, 사용자가 커피 잔으로부터 오렌지 주스를 마시고 있고/있거나 커피 잔으로부터 오렌지 주스를 마시는 것을 좋아한다고 추론할 수도 있다.
상기에서는 패시브 IoT 디바이스들 (105) 을 RFID 태그 또는 바코드 통신 인터페이스의 일부 형태를 갖는 것으로서 설명하였으나, 패시브 IoT 디바이스들 (105) 은 이러한 통신 능력들을 갖지 않는 다른 물리적 객체들 또는 하나 이상의 디바이스들을 포함할 수도 있다. 예를 들어, 소정의 IoT 디바이스들은 패시브 IoT 디바이스들 (105) 과 연관된 형상들, 사이즈들, 컬러들, 및/또는 다른 관측 가능한 피처들을 검출하여 패시브 IoT 디바이스들 (105) 을 식별할 수 있는 적합한 스캐너 또는 판독기 메커니즘을 가질 수도 있다. 이 방식에서, 임의의 적합한 물리적 객체는 그 아이덴티티 및 속성들을 통신하여 무선 통신 시스템 (100B) 의 일부가 될 수도 있고, 슈퍼바이저 디바이스 (130) 로 관측, 모니터링, 제어, 또는 다르게는 관리될 수도 있다. 추가로, 패시브 IoT 디바이스들 (105) 은 도 1a 에서의 무선 통신 시스템 (100A) 에 커플링되거나 다르게는 그 일부로 이루어질 수도 있고, 실질적으로 유사한 방식으로 관측, 모니터링, 제어, 또는 다르게는 관리될 수도 있다.
본 개시물의 다른 양태에 따르면, 도 1c 는 복수의 IoT 디바이스들을 포함하는 다른 무선 통신 시스템 (100C) 의 하이-레벨 아키텍처를 예시한다. 일반적으로, 도 1c 에 도시된 무선 통신 시스템 (100C) 은, 상기에서 더 상세히 설명된 도 1a 및 도 1b 에 각각 도시된 무선 통신 시스템들 (100A 및 100B) 과 동일한 및/또는 실질적으로 유사한 다양한 컴포넌트들을 포함할 수도 있다. 이와 같이, 설명의 간결함 및 용이함을 위해, 도 1c 에 도시된 무선 통신 시스템 (100C) 에서의 소정의 컴포넌트들에 관련한 다양한 상세들은, 동일하거나 유사한 상세들이 도 1a 및 도 1b 에 각각 예시된 무선 통신 시스템들 (100A 및 100B) 에 관련하여 위에서 이미 제공되었다는 결과로 본원에서 생략될 수도 있다.
도 1 c 에 도시된 통신 시스템 (100C) 은 IoT 디바이스들 (110-118) 과 슈퍼바이저 디바이스 (130) 간의 예시적인 피어-투-피어 통신들을 예시한다. 도 1c 에 도시된 바와 같이, 슈퍼바이저 디바이스 (130) 는 IoT 슈퍼바이저 인터페이스를 통해 IoT 디바이스들 (110-118) 각각과 통신한다. 또한, IoT 디바이스들 (110 및 114), IoT 디바이스들 (112, 114, 및 116), 및 IoT 디바이스들 (116 및 118) 은 서로와 직접적으로 통신한다.
IoT 디바이스들 (110-118) 은 IoT 그룹 (160) 을 구성한다. IoT 디바이스 그룹 (160) 은 사용자의 홈 네트워크에 접속된 IoT 디바이스들과 같은 IoT 디바이스들에 국부적으로 접속된 그룹이다. 도시되지 않았으나, 다수의 IoT 디바이스 그룹들은 인터넷 (175) 에 접속된 IoT 슈퍼에이전트 (140) 에 접속하고/하거나 이를 통해 서로와 통신할 수도 있다. 하이 레벨에서, 슈퍼바이저 디바이스 (130) 는 인트라-그룹 통신들을 관리하는 한편, IoT 슈퍼에이전트 (140) 는 인터-그룹 통신들을 관리할 수 있다. 별개의 디바이스들로서 도시되었으나, 슈퍼바이저 디바이스 (130) 및 IoT 슈퍼에이전트 (140) 는 동일한 디바이스 (예를 들어, 도 1a 에서의 컴퓨터 (120) 와 같은 독립형 디바이스 또는 IoT 디바이스) 일 수도 있고, 또는 동일한 디바이스 상에 상주할 수도 있다. 대안으로, IoT 슈퍼에이전트 (140) 는 액세스 포인트 (125) 의 기능에 대응하거나 또는 이를 포함할 수도 있다. 또 다른 대안으로서, IoT 슈퍼에이전트 (140) 는 IoT 서버 (170) 와 같은 IoT 서버의 기능에 대응하거나 또는 이를 포함할 수도 있다. IoT 슈퍼에이전트 (140) 는 게이트웨이 기능 (145) 을 인캡슐레이팅할 수도 있다.
각각의 IoT 디바이스 (110-118) 는 슈퍼바이저 디바이스 (130) 를 피어로서 다룰 수 있고, 속성/스키마 업데이트들을 슈퍼바이저 디바이스 (130) 로 송신할 수 있다. IoT 디바이스가 다른 IoT 디바이스와 통신할 필요가 있는 경우, 그것은 슈퍼바이저 디바이스 (130) 로부터 그 IoT 디바이스로의 포인터를 요청하여 그 후 피어로서 타겟 IoT 디바이스와 통신할 수 있다. IoT 디바이스들 (110-118) 은 공동 메시징 프로토콜 (common messaging protocol; CMP) 을 사용하는 피어-투-피어 통신 네트워크를 통해 서로와 통신한다. 2 개의 IoT 디바이스들이 CMP-인에이블되고 공동 통신 트랜스포트를 통해 접속되어 있는 한, 이 디바이스들은 서로 통신할 수 있다. 프로토콜 스택에서, CMP 계층 (154) 은 애플리케이션 계층 (152) 아래에 있고 전송 계층 (156) 및 물리적 계층 (158) 위에 있다.
본 개시물의 다른 양태에 따르면, 도 1d 는 복수의 IoT 디바이스들을 포함하는 다른 무선 통신 시스템 (100D) 의 하이-레벨 아키텍처를 예시한다. 일반적으로, 도 1d 에 도시된 무선 통신 시스템 (100D) 은, 상기에서 더 상세히 설명되는 도 1a 내지 도 1c 에 각각 도시된 무선 통신 시스템들 (100A 내지 100C) 과 동일한 및/또는 실질적으로 유사한 다양한 컴포넌트들을 포함할 수도 있다. 이와 같이, 설명의 간결함 및 용이함을 위해, 도 1d 에 도시된 무선 통신 시스템 (100D) 에서의 소정의 컴포넌트들에 관련한 다양한 상세들은, 동일하거나 유사한 상세들이 도 1a 내지 도 1c 에 각각 예시된 무선 통신 시스템 (100A 내지 100C) 에 관련하여 위에서 이미 제공되었다는 결과로 본원에서 생략될 수도 있다.
인터넷 (175) 은 IoT 의 개념을 사용하여 조절 (regulate) 될 수 있는 "리소스" 이다. 그러나, 인터넷 (175) 은 조절되는 리소스의 단지 일 예이고, 임의의 리소스가 IoT 의 개념을 사용하여 조절될 수 있다. 조절될 수 있는 다른 리소스들은 전기, 가스, 저장, 보안 등을 포함하지만 이에 제한되지는 않는다. IoT 디바이스는 리소스에 접속되고 이에 의해 그것을 조절할 수도 있고, 또는 리소스는 인터넷 (175) 을 통해 조절될 수 있다. 도 1d 는 천연 가스, 가솔린, 온수, 및 전기와 같은 여러 리소스들 (180) 을 나타내고, 여기서 리소스들 (180) 은 인터넷 (175) 에 추가하여 및/또는 인터넷을 통해 조절될 수 있다.
IoT 디바이스들은 서로 통신하여 리소스 (180) 의 그 사용을 조절할 수 있다. 예를 들어, IoT 디바이스들, 예컨대 토스터, 컴퓨터, 및 헤어드라이어는 블루투스 통신 인터페이스를 통해 서로 통신하여 그들의 전기 사용 (리소스 (180)) 을 조절할 수도 있다. 다른 예로서, IoT 디바이스들, 예컨대 데스크톱 컴퓨터, 전화기, 및 태블릿 컴퓨터는 Wi-Fi 통신 인터페이스를 통해 통신하여 인터넷 (175)(리소스 (180)) 으로의 그들의 액세스를 조절할 수도 있다. 또 다른 예로서, IoT 디바이스들, 예컨대 스토브, 의류 건조기, 및 온수기는 Wi-Fi 통신 인터페이스를 통해 통신하여 그들의 가스 사용을 조절할 수도 있다. 대안으로, 또는 부가적으로, 각각의 IoT 디바이스는 IoT 서버, 예컨대 IoT 서버 (170) 에 접속될 수도 있고, IoT 서버는 IoT 디바이스들로부터 수신된 정보에 기초하여 리소스 (180) 의 그 사용을 조절하기 위한 로직을 갖는다.
본 개시물의 다른 양태에 따르면, 도 1e 는 복수의 IoT 디바이스들을 포함하는 다른 무선 통신 시스템 (100E) 의 하이-레벨 아키텍처를 예시한다. 일반적으로, 도 1e 에 도시된 무선 통신 시스템 (100E) 은, 상기에서 더 상세히 설명된 도 1a 내지 도 1d 에 각각 도시된 무선 통신 시스템들 (100A 내지 100D) 과 동일한 및/또는 실질적으로 유사한 다양한 컴포넌트들을 포함할 수도 있다. 이와 같이, 설명의 간결함 및 용이함을 위해, 도 1e 에 도시된 무선 통신 시스템 (100E) 에서의 소정의 컴포넌트들에 관련한 다양한 상세들은, 동일하거나 유사한 상세들이 도 1a 내지 도 1d 에 각각 예시된 무선 통신 시스템 (100A 내지 100D) 에 관련하여 위에서 이미 제공되었다는 결과로 본원에서 생략될 수도 있다.
통신 시스템 (100E) 은 2 개의 IoT 디바이스 그룹들 (160A 및 160B) 을 포함한다. 다수의 IoT 디바이스 그룹들은 인터넷 (175) 에 접속된 IoT 슈퍼에이전트에 접속하고/하거나 이를 통해 서로와 통신할 수도 있다. 하이 레벨에서, IoT 슈퍼에이전트는 IoT 디바이스 그룹들 간의 인터-그룹 통신들을 관리할 수도 있다. 예를 들어, 도 1e 에서, IoT 디바이스 그룹 (160A) 은 IoT 디바이스들 (116A, 122A, 및 124A) 및 IoT 슈퍼에이전트 (140A) 를 포함하는 한편, IoT 디바이스 그룹 (160B) 은 IoT 디바이스들 (116B, 122B, 및 124B) 및 IoT 슈퍼에이전트 (140B) 를 포함한다. 이와 같이, IoT 슈퍼에이전트들 (140A 및 140B) 은 인터넷 (175) 에 접속하고 인터넷 (175) 을 통해 서로 통신하고/통신하거나 직접적으로 서로 통신하여 IoT 디바이스 그룹들 (160A 및 160B) 간의 통신을 용이하게 할 수도 있다. 또한, 도 1e 는 IoT 슈퍼에이전트들 (140A 및 140B) 을 통해 서로와 통신하는 2 개의 IoT 디바이스 그룹들 (160A 및 160B) 을 예시하지만, 당업자는 임의의 수의 IoT 디바이스 그룹들이 IoT 슈퍼에이전트들을 사용하여 서로 적절히 통신할 수도 있다는 것을 인식할 것이다.
도 2a 는 본 개시물의 양태들에 따른 IoT 디바이스 (200A) 의 하이-레벨 예를 나타낸다. 외관들 및/또는 내부 컴포넌트들이 IoT 디바이스들 사이에서 상당히 다를 수 있으나, 대부분의 IoT 디바이스들은 디스플레이 및 사용자 입력을 위한 수단을 포함할 수도 있는 사용자 인터페이스의 일부 유형을 가질 것이다. 사용자 인터페이스가 없는 IoT 디바이스들은 도 1a 및 도 1b 에서의 무선 인터페이스 (108) 와 같은 유선 또는 무선 네트워크를 통해 원격으로 통신될 수 있다.
도 2a 에 도시된 바와 같이, IoT 디바이스 (200A) 에 대한 예시의 구성에서, IoT 디바이스 (200A) 의 외부 케이싱은 종래 기술에 알려진 바와 같은 다른 컴포넌트들 중에서 디스플레이 (226), 파워 버튼 (222), 및 2 개의 제어 버튼들 (224A 및 224B) 로 구성될 수도 있다. 디스플레이 (226) 는 터치스크린 디스플레이일 수도 있고, 이 경우에서 제어 버튼들 (224A 및 224B) 은 필요하지 않을 수도 있다. IoT 디바이스 (200A) 의 일부로서 명시적으로 도시되지 않았지만, IoT 디바이스 (200A) 는, WiFi 안테나들, 셀룰러 안테나들, 위성 포지션 시스템 (SPS) 안테나들 (예를 들어, 글로벌 포지셔닝 시스템 (GPS) 안테나들) 등을 포함하지만 이들에 제한되지 않는, 외부 케이싱으로 구축되는 하나 이상의 통합된 안테나들 및/또는 하나 이상의 외부 안테나들을 포함할 수 있다.
IoT 디바이스 (200A) 와 같은 IoT 디바이스들의 내부 컴포넌트들이 상이한 하드웨어 구성들로 구현될 수 있지만, 내부 하드웨어 컴포넌트들에 대한 기본적인 하이-레벨 구성은 도 2a 에서 플랫폼 (202) 으로서 도시된다. 플랫폼 (202) 은 도 1a 및 도 1b 에서의 무선 인터페이스 (108) 와 같은 네트워크 인터페이스 및/또는 유선 인터페이스를 통해 송신된 소프트웨어 애플리케이션들, 데이터 및/또는 커맨드들을 수신 및 실행할 수 있다. 플랫폼 (202) 은 또한, 국부적으로 저장된 애플리케이션들을 독립적으로 실행할 수 있다. 플랫폼 (202) 은 하나 이상의 프로세서들 (208), 예컨대 일반적으로 프로세서 (208) 로서 지칭될 마이크로제어기, 마이크로프로세서, 주문형 집적 회로, 디지털 신호 프로세서 (DSP), 프로그램가능 로직 회로, 또는 다른 데이터 프로세싱 디바이스에 동작 가능하게 커플링된 유선 및/또는 무선 통신을 위해 구성된 하나 이상의 트랜시버들 (206)(예를 들어, Wi-Fi 트랜시버, 블루투스 트랜시버, 셀룰러 트랜시버, 위성 트랜시버, GPS 또는 SPS 수신기 등) 을 포함할 수 있다. 프로세서 (208) 는 IoT 디바이스의 메모리 (212) 내의 애플리케이션 프로그래밍 명령들을 실행할 수 있다. 메모리 (212) 는 판독 전용 메모리 (ROM), 랜덤 액세스 메모리 (RAM), 전기적으로 소거가능한 프로그램가능 ROM (EEPROM), 플래시 카드들, 또는 컴퓨터 플랫폼들에 공통적인 임의의 메모리를 포함할 수 있다. 하나 이상의 입력/출력 (I/O) 인터페이스들 (214) 은, 프로세서 (208) 가 예시된 바와 같은 디스플레이 (226), 파워 버튼 (222), 제어 버튼들 (224A 및 224B) 과 같은 다양한 I/O 디바이스들, 및 IoT 디바이스 (200A) 와 연관된 센서들, 액츄에이터들, 중계기들, 밸브들, 스위치들 등과 같은 임의의 다른 디바이스들과 통신하고 이들로부터 제어하는 것을 허용하도록 구성될 수 있다.
따라서, 본 개시물의 양태는 본원에 설명된 기능들을 수행하기 위한 능력을 포함하는 IoT 디바이스 (예를 들어, IoT 디바이스 (200A)) 를 포함할 수 있다. 당업자들이 인식하는 바와 같이, 다양한 로직 엘리먼트들은 본원에 개시된 기능을 달성하기 위해 프로세서 (예를 들어, 프로세서 (208)) 또는 소프트웨어 및 하드웨어의 임의의 조합에서 실행된 별개의 엘리먼트들, 소프트웨어 모듈들에서 구현될 수 있다. 예를 들어, 트랜시버 (206), 프로세서 (208), 메모리 (212), 및 I/O 인터페이스 (214) 는 모두 협력하여, 본원에 개시된 다양한 기능들을 로딩, 저장 및 실행시키도록 사용될 수도 있고, 따라서 이들 기능들을 수행하기 위한 로직은 다양한 엘리먼트들에 걸쳐 분배될 수도 있다. 대안으로, 기능은 하나의 별개의 컴포넌트에 통합될 수 있다. 따라서, 도 2a 에서 IoT 디바이스 (200A) 의 피처들은 단지 예시적인 것으로 간주되고 본 개시물은 예시된 피처들 또는 어레인지먼트에 제한되지 않는다.
도 2b 는 본 개시물의 양태들에 따른 패시브 IoT 디바이스 (200B) 의 하이-레벨 예를 예시한다. 일반적으로, 도 2b 에 도시된 패시브 IoT 디바이스 (200B) 는 도 2a 에 도시되고 상기에서 더 상세히 설명된 IoT 디바이스 (200A) 와 동일하고/하거나 실질적으로 유사한 다양한 컴포넌트들을 포함할 수도 있다. 이와 같이, 설명의 간결함 및 용이함을 위해, 도 2b 에 도시된 패시브 IoT 디바이스 (200B) 에서의 소정의 컴포넌트들에 관련한 다양한 상세들은, 동일하거나 유사한 상세들이 도 2a 에 예시된 IoT 디바이스 (200A) 에 관련하여 위에서 이미 제공되었다는 결과로 본원에서 생략될 수도 있다.
도 2b 에 도시된 패시브 IoT 디바이스 (200B) 는 일반적으로, 패시브 IoT 디바이스 (200B) 가 프로세서, 내부 메모리, 또는 소정의 다른 컴포넌트들을 갖지 않을 수도 있다는 점에서 도 2a 에 도시된 IoT 디바이스 (200A) 와 상이할 수도 있다. 대신에, 일 실시형태에서, 패시브 IoT 디바이스 (200B) 는 단지 I/O 인터페이스 (214) 또는 패시브 IoT 디바이스 (200B) 가 제어된 IoT 네트워크 내에서 관측, 모니터링, 제어, 관리 또는 다르게는 알려지는 것을 허용하는 다른 적합한 메커니즘을 포함할 수도 있다. 예를 들어, 일 실시형태에서, 패시브 IoT 디바이스 (200B) 와 연관된 I/O 인터페이스 (214) 는 바코드, 블루투스 인터페이스, 무선 주파수 (RF) 인터페이스, RFID 태그, IR 인터페이스, NFC 인터페이스, 또는 단거리 인터페이스를 통해 질의되는 경우 패시브 IoT 디바이스 (200B) 와 연관된 식별자 및 속성들을, 다른 디바이스 (예를 들어, 패시브 IoT 디바이스 (200B) 와 연관된 속성들에 관련한 정보를 검출, 저장, 통신, 착수, 또는 다르게는 프로세싱할 수 있는 IoT 디바이스 (200A) 와 같은 액티브 IoT 디바이스) 에 제공할 수 있는 임의의 다른 적합한 I/O 인터페이스를 포함할 수도 있다.
상기에서는 패시브 IoT 디바이스 (200B) 를 RF, 바코드, 또는 다른 I/O 인터페이스 (214) 의 일부 형태를 갖는 것으로서 설명하였으나, 패시브 IoT 디바이스 (200B) 는 이러한 I/O 인터페이스 (214) 를 갖지 않는 디바이스 또는 다른 물리적 객체를 포함할 수도 있다. 예를 들어, 소정의 IoT 디바이스들은 패시브 IoT 디바이스들 (200B) 과 연관된 형상들, 사이즈들, 컬러들, 및/또는 다른 관측 가능한 피처들을 검출하여 패시브 IoT 디바이스들 (200B) 을 식별할 수 있는 적합한 스캐너 또는 판독기 메커니즘을 가질 수도 있다. 이 방식으로, 임의의 적합한 물리적 객체는 그 식별자 및 속성들을 통신하고, 제어된 IoT 네트워크 내에서 관측, 모니터링, 제어, 또는 다르게는 관리될 수도 있다.
도 3 은 기능을 수행하도록 구성된 로직을 포함하는 통신 디바이스 (300) 를 예시한다. 통신 디바이스 (300) 는 IoT 디바이스들 (110-120), IoT 디바이스 (200A), 인터넷 (175) 에 커플링된 임의의 컴포넌트들 (예를 들어, IoT 서버 (170)) 등을 포함하지만 이에 제한되지는 않는, 상기-언급된 통신 디바이스들 중 어느 하나에 대응할 수도 있다. 따라서, 통신 디바이스 (300) 는 도 1a 및 도 1b 의 무선 통신 시스템들 (100A 및 100B) 을 통해 하나 이상의 다른 엔티티들과 통신하도록 (또는 이들과의 통신을 용이하게 하도록) 구성되는 임의의 전자 디바이스에 대응할 수 있다.
도 3 을 참조하면, 통신 디바이스 (300) 는 정보를 수신 및/또는 송신하도록 구성된 로직 (305) 을 포함한다. 일 예에서, 통신 디바이스 (300) 가 무선 통신 디바이스 (예를 들어, IoT 디바이스 (200A) 및/또는 패시브 IoT 디바이스 (200B)) 에 대응하면, 정보를 수신 및/또는 송신하도록 구성된 로직 (305) 은 무선 트랜시버 및 연관된 하드웨어 (예를 들어, RF 안테나, MODEM, 변조기 및/또는 복조기 등) 와 같은 무선 통신 인터페이스 (예를 들어, 블루투스, WiFi, Wi-Fi 다이렉트, LTE (Long-Term Evolution) 다이렉트, 등) 를 포함할 수 있다. 다른 예에서, 정보를 수신 및/또는 송신하도록 구성된 로직 (305) 은 유선 통신 인터페이스 (예를 들어, 시리얼 접속, USB 또는 펌웨어 접속, 인터넷 (175) 이 액세스될 수 있는 이더넷 접속, 등) 에 대응할 수 있다. 따라서, 통신 디바이스 (300) 가 네트워크-기반 서버 (예를 들어, IoT 서버 (170)) 의 일부 유형에 대응하면, 정보를 수신 및/또는 송신하도록 구성된 로직 (305) 은 일 예에서 이더넷 프로토콜을 통해 다른 통신 엔티티들에 네트워크-기반 서버를 접속시키는 이더넷 카드에 대응할 수 있다. 일 예에서, 본원에서 설명된 바와 같이, 통신 디바이스 (300) 가 네크워크에서의 복수의 디바이스들 간의 상호작용들을 설명하기 위해 그래머를 구성하도록 구성되는 경우, 정보를 수신 및/또는 송신하도록 구성된 로직 (305) 은 복수의 디바이스들 각각의 디바이스 능력들을 수신하도록 구성된 로직을 포함할 수도 있다. 추가의 예에서, 정보를 수신 및/또는 송신하도록 구성된 로직 (305) 은 센서류 또는 측정 하드웨어를 포함할 수 있고, 이에 의해 통신 디바이스 (300) 는 그 로컬 환경 (예를 들어, 가속도계, 온도 센서, 광센서, 로컬 RF 신호들을 모니터링하기 위한 안테나 등) 을 모니터링할 수 있다. 또한, 정보를 수신 및/또는 송신하도록 구성된 로직 (305) 은, 실행되는 경우 정보를 수신 및/또는 송신하도록 구성된 로직 (305) 의 관련 하드웨어가 그 자신의 수신 및/또는 송신 기능(들)을 수행하는 것을 허용하는 소프트웨어를 포함할 수 있다. 그러나, 정보를 수신 및/또는 송신하도록 구성된 로직 (305) 은 소프트웨어 단독에 대응하지 않으며, 정보를 수신 및/또는 송신하도록 구성된 로직 (305) 은 그 기능을 달성하기 위한 하드웨어에 적어도 부분적으로 의존한다.
도 3 을 참조하면, 통신 디바이스 (300) 는 정보를 프로세싱하도록 구성된 로직 (310) 을 더 포함한다. 일 예에서, 정보를 프로세싱하도록 구성된 로직 (310) 은 적어도 프로세서를 포함할 수 있다. 정보를 프로세싱하도록 구성된 로직 (310) 에 의해 수행될 수 있는 프로세싱의 타입의 구현예는, 결정들을 수행하는 것, 접속들을 확립하는 것, 상이한 정보 옵션들 사이에서 선택들을 행하는 것, 데이터에 관련된 평가들을 수행하는 것, 측정 동작들을 수행하기 위해 통신 디바이스 (300) 에 커플링된 센서들과 상호작용하는 것, 정보를 하나의 포맷에서 다른 것으로 (예를 들어, .wmv, 내지 .avi 등과 같은 상이한 프로토콜들 사이에서) 변환하는 것 등을 포함하지만 이들에 제한되지 않는다. 예를 들어, 통신 디바이스 (300) 가 본원에 설명된 바와 같은, 네트워크에서의 복수의 디바이스들 간의 상호작용들을 설명하기 위해 그래머를 구성하도록 구성되는 경우, 정보를 프로세싱하도록 구성된 로직 (310) 은 디바이스 능력들에 기초하여 복수의 디바이스들의 그루핑 (grouping) 들을 나타내는 감소된 디바이스 리스트를 생성하도록 구성된 로직, 감소된 디바이스 리스트를 사용하여 복수의 디바이스들 간의 상호작용들의 하나 이상의 시퀀스들을 모델링하도록 구성된 로직, 및/또는 모델링된 상호작용들의 하나 이상의 시퀀스들에 기초하여 그래머를 구성하도록 구성된 로직을 포함할 수도 있다. 정보를 프로세싱하도록 구성된 로직 (310) 에 포함된 프로세서는 범용 프로세서, DSP, ASIC, 필드 프로그램가능 게이트 어레이 (FPGA) 또는 다른 프로그램가능 로직 디바이스, 이산 게이트 또는 트랜지스터 로직, 이산 하드웨어 컴포넌트들, 또는 본원에 설명된 기능들을 수행하도록 설계된 그 임의의 조합에 대응할 수 있다. 범용 프로세서는 마이크로프로세서일 수도 있지만, 다르게는, 프로세서는 임의의 종래의 프로세서, 제어기, 마이크로제어기, 또는 상태 머신일 수도 있다. 프로세서는 또한 컴퓨팅 디바이스들의 조합 (예를 들어, DSP 와 마이크로프로세서의 조합, 복수의 마이크로프로세서들, DSP 코어와 연계한 하나 이상의 마이크로프로세서들, 또는 임의의 다른 그러한 구성) 으로 구현될 수도 있다. 또한, 정보를 프로세싱하도록 구성된 로직 (310) 은, 실행되는 경우 정보를 프로세싱하도록 구성된 로직 (310) 의 관련 하드웨어가 자신의 기능(들)을 수행하는 것을 허용하는 소프트웨어를 포함할 수 있다. 그러나, 정보를 프로세싱하도록 구성된 로직 (310) 은 소프트웨어 단독에 대응하지 않으며, 정보를 프로세싱하도록 구성된 로직 (310) 은 그 기능을 달성하기 위한 하드웨어에 적어도 부분적으로 의존한다.
도 3 을 참조하면, 통신 디바이스 (300) 는 정보를 저장하도록 구성된 로직 (315) 을 더 포함한다. 일 예에서, 정보를 저장하도록 구성된 로직 (315) 은 적어도 비일시적 메모리와 관련 하드웨어 (예를 들어, 메모리 제어기 등) 를 포함할 수 있다. 예를 들어, 본원에서 설명된 바와 같이, 통신 디바이스 (300) 가 네크워크에서의 복수의 디바이스들 간의 상호작용들을 설명하기 위해 그래머를 구성하도록 구성되는 경우, 정보를 저장하도록 구성된 로직 (315) 은 통신 디바이스 (300) 의 메모리에 그래머를 저장하도록 구성된 로직을 포함할 수도 있다. 정보를 저장하도록 구성된 로직 (315) 에 포함된 비일시적 메모리는 RAM, 플래시 메모리, ROM, 소거가능 프로그램가능 ROM (EPROM), EEPROM, 레지스터들, 하드 디스크, 착탈형 디스크, CD-ROM, 또는 이 기술 분야에 알려진 저장 매체의 임의의 다른 형태에 대응할 수 있다. 또한, 정보를 저장하도록 구성된 로직 (315) 은, 실행되는 경우 정보를 저장하도록 구성된 로직 (315) 의 관련 하드웨어가 자신의 저장 기능(들)을 수행하는 것을 허용하는 소프트웨어를 포함할 수 있다. 그러나, 정보를 저장하도록 구성된 로직 (315) 은 소프트웨어 단독에 대응하지 않으며, 정보를 저장하도록 구성된 로직 (315) 은 그 기능을 달성하기 위한 하드웨어에 적어도 부분적으로 의존한다.
도 3 을 참조하면, 통신 디바이스 (300) 는 정보를 제시하도록 구성된 로직 (320) 을 선택적으로 더 포함한다. 일 예에서, 정보를 제시하도록 구성된 로직 (320) 은 적어도 출력 디바이스 및 관련 하드웨어를 포함할 수 있다. 예를 들어, 출력 디바이스는 비디오 출력 디바이스 (예를 들어, 디스플레이 스크린, USB, HDMI 등과 같이 비디오 정보를 전달할 수 있는 포트), 오디오 출력 디바이스 (예를 들어, 스피커들, 마이크 잭, USB, HDMI 등과 같이 오디오 정보를 전달할 수 있는 포트), 진동 디바이스 및/또는 정보가 통신 디바이스 (300) 의 사용자 또는 오퍼레이터에 의해 출력용으로 포맷되거나 또는 실제로 출력될 수 있게 하는 임의의 다른 디바이스를 포함할 수 있다. 예를 들어, 통신 디바이스 (300) 가 도 2a 에 도시된 바와 같은 IoT 디바이스 (200A) 및/또는 도 2b 에 도시된 바와 같은 패시브 IoT 디바이스 (200B) 에 대응하면, 정보를 제시하도록 구성된 로직 (320) 은 디스플레이 (226) 를 포함할 수 있다. 추가의 예에서, 정보를 제시하도록 구성된 로직 (320) 은 로컬 사용자 (예를 들어, 네트워크 스위치들 또는 라우터들, 원격 서버들 등) 를 갖지 않는 네트워크 통신 디바이스들과 같은 소정의 통신 디바이스들에 대해 생략될 수 있다. 또한, 정보를 제시하도록 구성된 로직 (320) 은, 실행되는 경우 정보를 제시하도록 구성된 로직 (320) 의 관련 하드웨어가 자신의 기능(들)을 수행하는 것을 허용하는 소프트웨어를 포함할 수 있다. 그러나, 정보를 제시하도록 구성된 로직 (320) 은 소프트웨어 단독에 대응하지 않으며, 정보를 제시하도록 구성된 로직 (320) 은 그 기능을 달성하기 위한 하드웨어에 적어도 부분적으로 의존한다.
도 3 을 참조하면, 통신 디바이스 (300) 는 로컬 사용자 입력을 수신하도록 구성된 로직 (325) 을 선택적으로 더 포함한다. 일 예에서, 로컬 사용자 입력을 수신하도록 구성된 로직 (325) 은 적어도 사용자 입력 디바이스 및 관련 하드웨어를 포함할 수 있다. 예를 들어, 사용자 입력 디바이스는 버튼들, 터치스크린 디스플레이, 키보드, 카메라, 오디오 입력 디바이스 (예를 들어, 마이크로폰 또는 마이크로폰 잭 등과 같은 오디오 정보를 전달할 수 있는 포트), 및/또는 정보가 통신 디바이스 (300) 의 사용자 또는 오퍼레이터로부터 수신될 수 있게 하는 임의의 다른 디바이스를 포함할 수 있다. 예를 들어, 통신 디바이스 (300) 가 도 2a 에 도시된 바와 같은 IoT 디바이스 (200A) 및/또는 도 2b 에 도시된 바와 같은 패시브 IoT 디바이스 (200B) 에 대응하면, 로컬 사용자 입력을 수신하도록 구성된 로직 (325) 은 버튼들 (222, 224A, 및 224B), 디스플레이 (226)(터치스크린이면) 등을 포함할 수 있다. 추가의 예에서, 로컬 사용자 입력을 수신하도록 구성된 로직 (325) 은 로컬 사용자 (예를 들어, 네트워크 스위치들 또는 라우터들, 원격 서버들 등) 를 갖지 않는 네트워크 통신 디바이스들과 같은 소정의 통신 디바이스들에 대해 생략될 수 있다. 또한, 로컬 사용자 입력을 수신하도록 구성된 로직 (325) 은, 실행되는 경우 로컬 사용자 입력을 수신하도록 구성된 로직 (325) 의 관련 하드웨어가 자신의 기능(들)을 수행하는 것을 허용하는 소프트웨어를 포함할 수 있다. 그러나, 로컬 사용자 입력을 수신하도록 구성된 로직 (325) 은 소프트웨어 단독에 대응하지 않으며, 로컬 사용자 입력을 수신하도록 구성된 로직 (325) 은 그 기능을 달성하기 위한 하드웨어에 적어도 부분적으로 의존한다.
도 3 을 참조하면, 305 내지 325 의 구성된 로직들은 도 3 에서 별개의 또는 구별되는 블록들로 도시되었으나, 각각의 구성된 로직이 그 기능들 수행하게 하는 하드웨어 및/또는 소프트웨어는 부분적으로는 오버랩할 수 있다는 것이 인식될 것이다. 예를 들어, 305 내지 325 의 구성 로직들의 기능을 용이하게 하기 위해 사용된 임의의 소프트웨어는 정보를 저장하도록 구성된 로직 (315) 과 연관된 비일시적 메모리에 저장될 수 있어서, 305 내지 325 의 구성 로직들 각각은 정보를 저장하도록 구성된 로직 (315) 에 의해 저장된 소프트웨어의 동작에 부분적으로 기초하여 그들의 기능 (즉, 이 경우, 소프트웨어 실행) 을 수행한다. 마찬가지로, 구성 로직들 중 하나와 직접적으로 관련된 하드웨어는 때때로 다른 구성 로직들에 의해 사용되거나 차용될 수 있다. 예를 들어, 정보를 프로세싱하도록 구성된 로직 (310) 의 프로세서는, 정보를 수신 및/또는 송신하도록 구성된 로직 (305) 에 의해 송신되기 전에 적절한 포맷으로 데이터를 포맷할 수 있어서, 정보를 수신 및/또는 송신하도록 구성된 로직 (305) 은 정보를 프로세싱하도록 구성된 로직 (310) 과 연관된 하드웨어 (즉, 프로세서) 의 동작에 부분적으로 기초하여 자신의 기능 (즉, 이 경우, 데이터의 송신) 을 수행한다.
일반적으로, 명시적으로 다르게 언급되지 않는 한, 본 개시물 전체에 걸쳐 사용된 바와 같은 문구 (phrase) "~하도록 구성된 로직"은 하드웨어에 의해 적어도 부분적으로 구현되는 양태를 인보크하도록 의도되며, 하드웨어에 독립적인 소프트웨어 전용 구현들로 맵핑하도록 의도된 것은 아니다. 또한, 다양한 블록들에서 "~하도록 구성된 로직" 또는 구성된 로직은 특정의 로직 게이트들 또는 엘리먼트들에 제한되지 않고, 일반적으로 (하드웨어 또는 하드웨어와 소프트웨어의 조합을 통해) 본원에 설명된 기능을 수행하기 위한 능력을 지칭하는 것으로 인식될 것이다. 따라서, 각종 블록들에서 예시된 바와 같은 구성된 로직들 또는 "~하도록 구성된 로직" 은 단어 "로직" 을 공유함에도 불구하고 로직 게이트들 또는 로직 엘리먼트들로서 반드시 구현될 필요는 없다. 각종 블록들에서 로직 간의 다른 상호작용들 또는 협력은 이하에서 더 상세히 설명된 양태들의 리뷰로부터 당업자에게 더 명백해질 것이다.
다양한 실시형태들은 다양한 상용 가능한 서버 디바이스들 또는 슈퍼바이저 디바이스들 중 어느 하나, 예컨대 도 1b 에서 IoT 서버 (170) 또는 슈퍼바이저 디바이스 (130) 각각 상에서 구현될 수도 있다. 단순함을 위해, 본원에 설명된 기능은 IoT 서버 (170) 에 의해 수행되는 것으로서 설명되지만, 슈퍼바이저 디바이스 (130) 는 본원에 설명된 기능들을 수행할 수도 있다는 것이 명백할 것이다.
도 4a 는 본 개시물의 일 양태에 따른 IoT 서버 (170) 의 단순화된 도면을 예시한다. 도 4a 에서, IoT 서버 (170) 는 디스크 드라이브 (403) 와 같은 대용량 비휘발성 메모리 및 휘발성 메모리 (402) 에 커플링된 프로세서 (401) 를 포함한다. IoT 서버 (170) 는 또한, 플로피 디스크 드라이브, 콤팩트 디스크 (CD) 또는 프로세서 (401) 에 커플링된 디지털 비디오 디스크 (DVD) 디스크 드라이브 (406) 를 포함할 수도 있다. IoT 서버 (170) 는 또한, 예컨대, 다른 브로드캐스트 시스템 컴퓨터들 및 서버들에 또는 인터넷에 커플링된 로컬 영역 네트워크와 같은 네트워크 (407) 와 데이터 접속을 확립하는 프로세서 (401) 에 커플링된 네트워크 액세스 포트들 (404) 을 포함할 수도 있다.
도 3 의 맥락에서, 도 4 의 IoT 서버 (170) 는 통신 디바이스 (300) 의 하나의 구현예를 예시하고, 이에 의해 정보를 송신 및/또는 수신하도록 구성된 로직 (305) 은 네트워크 (407) 와 통신하기 위해 IoT 서버 (170) 에 의해 사용된 (유선 또는 무선일 수도 있는) 네트워크 액세스 포인트 (404) 에 대응하고, 정보를 프로세싱하도록 구성된 로직 (310) 은 프로세서 (401) 에 대응하며, 정보를 저장하도록 구성된 로직 (315) 은 휘발성 메모리 (402), 디스크 (disk) 드라이브 (403), 및/또는 디스크 (disc) 드라이브 (406) 의 임의의 조합에 대응한다는 것이 인식될 것이다. 정보를 제시하도록 구성된 선택적 로직 (320) 및 로컬 사용자 입력을 수신하도록 구성된 선택적 로직 (325) 은 도 4 에서 명백히 도시되지 않고, 거기에 포함되거나 포함되지 않을 수도 있다. 따라서, 도 4 는 통신 디바이스 (300) 가 도 2a 에서와 같은 IoT 디바이스 구현에 추가하여 서버로서 구현될 수도 있다는 것을 설명하도록 돕는다.
도 4b 는 본 개시물의 실시형태에 따라 도 4a 에서 IoT 서버 (170) 의 프로세서 (401) 의 예시적인 컴포넌트들을 예시한다. 구체적으로, 프로세서 (401) 는 본원에 설명된 바와 같이, 네트워크 액세스 포인트들 (404) 을 통해 수신된 디바이스 능력들에 기초하여 IoT 네트워크에서의 복수의 디바이스들의 그루핑들을 나타내는 감소된 디바이스 리스트를 생성하도록 구성된 감소된 디바이스 리스트 생성기 (412) 를 포함한다. 프로세서 (401) 는 또한, 본원에 설명된 바와 같이 감소된 디바이스 리스트를 사용하여 복수의 디바이스들 간의 상호작용들의 하나 이상의 시퀀스들을 모델링하도록 구성된 상호작용 시퀀스 모델러 (414) 를 포함한다. 프로세서 (401) 는, 본원에 설명된 바와 같이 모델링된 상호작용들의 하나 이상의 시퀀스들에 기초하여 그래머를 구성하도록 구성된 그래머 구성 모델 (416) 을 더 포함한다. 그래머는 그 후, 메모리 (403) 에 저장될 수도 있다.
일 실시형태에서, 감소된 디바이스 리스트 생성기 (412) 는 메모리 (403) 로부터 취출된 디바이스 능력들에 기초하여 감소된 디바이스 리스트를 생성할 수도 있고, 여기서 메모리 (403) 는, IoT 서버 (170) 가 네트워크 액세스 포인트들 (404) 을 통해 디바이스 능력들을 수신한 후에 디바이스 능력들을 저장한다. 유사하게, 생성된 그래머를 단지 메모리 (403) 에 저장하기 보다는, IoT 서버 (170) 는 이 그래머를 네트워크 액세스 포트들 (404) 을 통해 하나 이상의 다른 IoT 디바이스들 또는 서버들로 송신할 수 있다.
"디바이스들" 은 더 작아지게 되어 "사물 인터넷" 전체에 걸쳐 많은 상이한 제품들 내에 임베딩된다. 서로 통신하는 디바이스들의 네트워크들은 따라서 식별하기가 더 동적이고 더 어렵다. IoT 가 발달함에 따라, 그리고 임의의 단일 디바이스보다 가능하게는 그 자신에게 작용할 수 있는 것보다 더욱 더 정교하고 파워풀한 방식들로 디바이스들이 함께 작동함에 따라, "값 (value)" 의 개념의 구현 및 의미를 이해하는 것이 유리할 것이다. 종래의 통계 시스템에서 데이터 포인트들을 평가하는데 있어서, 그 데이터의 실제 값은 시간 및 공간과 같은 콘텍스트에 놓일 참조 포인트들로부터 크게 분리되기 때문에 그것을 판별하고 따라서 마이닝 (mine) 하는 것이 어렵다. 따라서, IoT 에코시스템에 고유한 값을 정확히 이해하고 이에 따라 디바이스들을 레버리징하는 방법을 이해하기 어렵다. 이를 위해, 전체가 그 부분들의 합을 얼마나 많이 초과하는지를 알기 위한 양적 측정은 무엇입니까? 라는 질문이 던져질 수 있다.
IoT 의 홀리스틱 양태로 탭핑하고자 하는 경우, 추가된 값을 캡처하는 방법에 대한 질문이 존재한다. 이것은, 총합이 시스템 개별의 파트들보다 더 큰 전체 시스템의 유의성을 측정할 능력을 요구한다. 이것은 또한, 측정될 수 있는 방식으로 "값" 을 정량화 및 정의할 능력을 요구한다. 이것은 특히, IoT 디바이스들의 값이 A + B + C = D 로서 측정될 수 없기 때문에 복잡하다. 대신에, 이들 디바이스들은 전체로서 함께 기능하기 때문에, 이들은 일부 추가 값을 갖는다.
예를 들어, 5 개의 IoT 디바이스들이 서라운드 사운드 시스템에 대한 스피커들로서 작용하고 있고 제 6 IoT 디바이스가 추가된다면, 각각의 개별의 스피커의 값보다 더 큰 추가된 값이 5 에서 6 개의 디바이스들로 감으로써 존재한다. 즉, 추가된 값은 6 개의 스피커들을 갖는 서라운드 사운드 시스템 대 5 개의 스피커들을 갖는 서라운드 사운드 시스템의 값이다. 또한, 단일의 IoT 디바이스가 룸에서 단일 디바이스로서 기능하고 있고 그 후 서라운드 사운드를 생성하는 제 2 IoT 디바이스가 추가되는 경우, 시스템에 누적된 추가 값은 5 개의 디바이스들에 제 6 디바이스를 추가하는 것과 상이한 추가의 값일 수도 있다. 즉, 단일-스피커 시스템에서 듀얼-스피커 시스템으로 감으로써 추가된 값은 5 개의 스피커들을 갖는 서라운드 사운드 시스템에서 6 개의 스피커들을 갖는 서라운드 사운드 시스템으로 감으로써 추가된 값과 상이하다.
각각의 IoT 디바이스의 값을 정량화하기 위해, A + B 의 전형적인 공식은 A + delta 의 새로운 공식으로 바뀌어야 한다. 이것은 "델타" 를 측정하는 방법에 대한 질문을 제기한다. 제안된 시스템은 델타를 할당 및 정량화하기 위한 파라미터들로서 시간 및 공간을 포함하는 함수를 생성한다. 시간-공간 파라미터들을 플레이로 가져오는 것은 값을 정량화하는 것에 대한 새로운 방식을 허용한다.
예를 들어, 각각 $100 의 값인 6 개의 모바일 폰들이 주어지면, 각각의 디바이스가 시간 또는 공간에서의 그 포지션에 관계없이 독립적으로 평가되기 때문에 그 폰들의 결합된 값은 총 $600 이다. 그러나, 상기 서라운드 사운드 시스템 예를 참조하여, 6 개의 모바일 폰들이 IoT 네트워크에서 함께 작업하여 서라운드-사운드 시스템을 생성하면, 그 폰들의 결합된 값은 $600 과 상이할 수도 있다. 서라운드-사운드 시스템이 $1,000 의 값인 것을 가정하면, 6 개의 모바일 폰들은 이제 $1,000 가치가 된다. 서라운드 사운드를 제공하기 위해 모든 디바이스들은 동일한 시간 및 공간에 존재해야 하기 때문에 그들의 결합된 값은 시간-공간 인자 덕택으로 $400 만큼 증가한다.
따라서, 본 개시물의 다양한 양태들은 생성된 그래머의 복잡도를 측정함으로써 디바이스들의 현행 네트워크의 홀리스틱 값을 정량화하는 것에 관련된다. 먼저, IoT 네트워크에서의 디바이스들의 능력들은 IoT 네트워크에 대한 서버, 예컨대 도 1b 에서 IoT 서버 (170) 또는 슈퍼바이저 (130) 로 전송된다. IoT 서버 (170), 구체적으로 감소된 디바이스 리스트 생성기 (412) 는 능력들을 클러스터링하여, 디바이스들의 수를 그 능력들에 기초하여 그룹들로 감소시킨다. 예를 들어, IoT 네트워크에서의 각각의 디바이스는 60 초 윈도우에서 전송 및 수신된 패킷들의 수 및 각각의 패킷의 송신 시간과 같은 다양한 관측값들을 로그할 수 있다. 디바이스는 관측 로그 파일들을 IoT 서버 (170) 로 전송할 수 있다. IoT 서버 (170), 구체적으로 감소된 디바이스 리스트 생성기 (412) 는 시간, 전송된 패킷들의 수, 및 수신된 패킷들의 수를 포함하는 3 차원 피처 벡터와 같은, 관측 로그들에서 관측값에 대한 피처 벡터를 구성할 수 있다. 피처 벡터들은 그 후, 당해 기술에 알려진 바와 같이 통계적으로 클러스터링될 수 있어서, 각각의 피처 벡터를 센트로이드에 할당하고 이에 의해 디바이스들을 그 능력들에 기초하여 감소된 디바이스 리스트로 그룹화한다.
다음으로, 하나 이상의 "스파이 (spy)" 디바이스들은 IoT 네트워크에서의 디바이스들 간의 상호작용들을 모니터링하고 그 상호작용들을 IoT 서버 (170) 에 보고할 수 있다. 스파이 디바이스(들)은 예를 들어, 네크워크에서 패킷 스니핑함으로써 명시적으로, 또는 제 1 디바이스가 패킷을 제 2 디바이스로 전송했다고 추론함으로써 암시적으로 상호작용들을 모니터링할 수도 있다. 예를 들어, 제 1 디바이스가 제 1 시간에 패킷을 전송하고 제 2 디바이스가 제 2 시간에 패킷을 수신하면, 스파이 디바이스는 제 1 디바이스가 패킷을 제 2 디바이스로 전송했다고 추론할 수도 있다. 스파이 디바이스는 상호작용하는 디바이스들 또는 이 상호작용들을 검출 및 보고할 수 있는 임의의 디바이스 중 하나 이상일 수도 있다.
감소된 디바이스 리스트를 사용하면, IoT 서버 (170), 구체적으로 상호작용 시퀀스 모델러 (414) 는 상호작용들의 시퀀스들을 모델링할 수 있다. 상호작용들은 클러스터링된 공간에서 나타날 수도 있다. IoT 서버 (170) 는 시간으로 소팅된, 시퀀스로 수신된 관측 로그들에서 관측들을 분석할 수 있다. 각각의 시간 스텝에서, IoT 서버 (170)/상호작용 시퀀스 모델러 (414) 는 관측을 센트로이드에 할당할 수 있다. 각각의 관측과 연관된 센트로이드들의 시퀀스는 "상호작용들의 시퀀스" 로서 지칭된다.
IoT 서버 (170), 구체적으로 그래머 구성 모듈 (416) 은 그 후, 상호작용들의 이들 시퀀스들에 기초하여 "그래머" 를 구성할 수 있다. IoT 서버 (170)/그래머 구성 모듈 (416) 은 보고된 상호작용들을 평가하고, 보고된 상호작용들로부터 특정한 상호작용 시퀀스들을 특징화하는 그래머들을 생성한다. 예를 들어, 제 1 그래머는 1) 원격 제어 디바이스로부터 검출된 원격 제어 신호, 2) TV 가 턴온되고 있다는 것을 나타내는 TV 신호, 및 3) TV 턴온의 검출에 기초하여 라이팅이 TV 모드로 변경되었다는 것을 나타내는 라이트 조정 신호로 이루어진 상호작용들의 시퀀스를 포함할 수도 있다.
감소된 디바이스 리스트를 생성하고 상호작용들의 시퀀스들을 모델링하기 위해, IoT 서버 (170) 는 먼저 스캐터그램을 생성하고 그 후 그것을 상태 모델로 변환할 수 있다. 스캐터그램은 구조화된 지식을 도시하는 한편, 상태도는 내러티브 (narrative) 를 도시한다. 이와 같이, 상태도는 더 많은 정보를 캡처한다. 상이한 데이터 세트들의 상대 값은 내러티브 공간에서 비교될 수 있다.
데이터의 임의의 세트는 구조화되어 스캐터그램으로 맵핑될 수 있다. IoT 서버 (170) 는 데이터를 클러스터링하고, 센트로이드들을 찾고, 축들을 정의하며, 데이터를 맵핑한다. 클러스터들로 맵핑되는 임의의 데이터는 그 후, 상태 머신으로 맵핑될 수 있고, 여기서 각각의 센트로이드는 상태 (state) 이고 각각의 데이터 포인트는 트랜지션이다.
도 5a 내지 도 5d 는 스캐터그램을 상태 머신으로 변환하는 예를 나타낸다. 도 5a 에서, 스캐터그램 (500) 은 하나의 포인트를 포함하고, 이 포인트는 하나의 센트로이드/상태 (C1; 510) 를 대응한다. 도 5b 에서, 제 2 포인트가 스캐터그램 (500) 에 추가되어 있다. 제 2 포인트는 제 2 센트로이드/상태 (C2; 520) 인 별개의 클러스터 내에 있다. 제 2 데이터 포인트는 센트로이드/상태 (C1; 510) 로부터 C2 (520) 으로의 트랜지션 "d2" 를 나타낸다.
도 5c 에서, 제 3 포인트가 스캐터그램 (500) 에 추가되어 있다. 센트로이드/상태 (C1; 510) 는 이제 2 개의 포인트들을 포함하고, 2 개의 포인트들의 평균으로 시프트된다. 제 3 데이터 포인트는 센트로이드/상태 (C1; 510) 로부터 다시 센트로이드/상태 (C1; 510) 으로의 트랜지션 "d3" 를 나타낸다.
도 5d 에서, 제 4 포인트가 스캐터그램 (500) 에 추가되어 있다. 센트로이드/상태 (C1; 510) 는 이제 3 개의 포인트들을 포함하고, 3 개의 포인트들의 평균으로 시프트된다. 제 4 데이터 포인트는 센트로이드/상태 (C1; 510) 로부터 다시 센트로이드/상태 (C1; 510) 으로의 트랜지션 "d4" 를 나타낸다. 트랜지션 (d4) 은 d4 와 센트로이드/상태 (C1; 510) 간의 간격을 반영한다.
감소된 디바이스 리스트를 생성하고 상호작용들의 시퀀스들을 모델링한 후에, IoT 서버 (170), 구체적으로 그래머 구성 모듈 (416) 은 IoT 네트워크에서의 디바이스들 간의 상호작용들을 설명하도록 그래머를 구성한다. 도 6a 는 상호작용들의 그래머를 구성하는데 사용될 수 있는 IoT 네트워크 (600A) 에서의 디바이스들 간의 상호작용들의 예시적인 시퀀스를 나타낸다. 도 6a 에서, 디바이스 A (610), 디바이스 B (620), 및 디바이스 C (630) 는 예시적인 IoT 네트워크 (600A) 를 형성한다. 디바이스들 (610-630) 사이의 다양한 화살표들은 디바이스들 간의 상호작용들의 시퀀스들을 예시한다. 디바이스들 (61-630) 중 하나일 수도 있지만 반드시 이 하나일 필요가 없는 스파이 디바이스는 디바이스들 (610-630) 간의 다양한 상호작용들을 검출 및 로그한다. 스파이 디바이스는 IoT 서버, 예컨대 도 1b 에서 IoT 서버 (170) 또는 슈퍼바이저 (130) 로 로깅된 상호작용들을 전송한다.
도 6a 에서, 상호작용들의 시퀀스는 [A] [B] [C] [A] [B] [A] [C] [A] 이다. 잘-알려진 SEQUITUR 알고리즘을 사용하면, 상호작용들의 이 시퀀스에 기초하여 다음의 그래머가 구성될 수도 있고: S -> 1 2 3 2 , 여기서 "1" 은 상호작용 "AB" 를 나타내고, "2" 는 상호작용 "CA" 를 나타내며, "3" 은 상호작용 "BA" 를 나타낸다.
도 6b 는 상호작용들의 그래머를 구성하는데 사용될 수 있는 IoT 네트워크 (600B) 에서의 디바이스들 간의 상호작용들의 예시적인 시퀀스를 나타낸다. 도 6b 에서, 디바이스 A (610), 디바이스 D (650), 및 디바이스 E (660) 는 예시적인 IoT 네트워크 (600B) 를 형성한다. 디바이스들 (610, 650, 660) 사이의 다양한 화살표들은 디바이스들 간의 상호작용들의 시퀀스들을 예시한다. 디바이스들 (610, 650, 660) 중 하나일 수도 있지만 반드시 이 하나일 필요가 없는 스파이 디바이스는 디바이스들 (610, 650, 660) 간의 다양한 상호작용들을 검출 및 로그한다. 스파이 디바이스는 로깅된 상호작용들을 IoT 서버 (170) 로 전송한다.
도 6b 에서, 상호작용들의 시퀀스는 [A] [E] [D] [E] [A] [E] [D] [E] 이다. 잘-알려진 SEQUITUR 알고리즘을 사용하면, 상호작용들의 이 시퀀스에 기초하여 다음의 그래머가 구성될 수도 있고: S -> 3 3, 여기서 "1" 은 상호작용 "AE" 를 나타내고, "2" 는 상호작용 "DE" 를 나타내며, "3" 은 상호작용 "1 2", 즉 "AEDE" 를 나타낸다.
IoT 서버 (170) 는 그 후, 이하에 설명되는 바와 같이, 구성된 그래머들을 비교하여 유사도들을 결정하거나 다른 정보를 도출할 수 있다:
Figure pct00001
전술된 기법들은 또한, 서로에 대한 근접도에 기초하여 사용자들 간의 관계들을 결정하는데 사용될 수 있다. 도 7 은 사용자 A (710), 사용자 B (720), 및 사용자 C (730) 간의 근접도 검출들의 예시적인 시퀀스를 나타낸다. 근접도 검출들은 사용자들의 IoT 디바이스들, 예컨대 사용자들의 스마트폰들에 의해 결정될 수도 있다. 도 7 에서, 사용자들 (710-730) 사이의 다양한 화살표들은 사용자들이 서로 근접한 상태가 되는 것을 나타낸다. 사용자들 (710-730) 에 속하는 IoT 디바이스들 중 하나일 수도 있지만 반드시 이 하나일 필요가 없는 스파이 디바이스는, 사용자들 (710-730) 간의 다양한 근접도들을 검출 및 로그한다. 스파이 디바이스는 IoT 서버, 예컨대 도 1b 에서의 IoT 서버 (170) 또는 슈퍼바이저 (130) 로 로깅된 근접도 검출들을 전송한다.
도 7 에서, 근접도 검출들의 시퀀스는 [A] [B] [C] [A] [B] [C] [A] [B] [C][A] 이다. 근접도 검출들의 이 시퀀스에 기초하여 다음의 그래머가 구성될 수도 있고: S -> 1 2 3 1 2, 여기서 "1" 은 상호작용 "AB" 를 나타내고, "2" 는 상호작용 "CA" 를 나타내며, "3" 은 상호작용 "BC" 를 나타낸다.
감소된 디바이스 리스트를 생성하고, 상호작용들의 시퀀스들을 모델링하며, 그래머를 구성한 후에, IoT 서버 (170) 는 그 후, 구성된 그래머를 검출하는 것에 응답하여 IoT 네트워크에서 발생할 하나 이상의 액션들을 정의할 수 있다. IoT 서버 (170) 는 이전의 지식, 전문가 시스템 분석, 및/또는 다른 IoT 네트워크들로부터의 이전 예들을 통해 수행할 하나 이상의 액션들을 결정할 수도 있다. TV 가 턴온되고 있다는 것 (2) 및 라이팅이 TV 모드로 변경되었다는 것 (3) 을 검출하는 상기 예를 참조하면, 제 1 그래머에 의해 트리거링된 액션은 그래머 #1 + #2 + #3 이 검출될 때마다 4) 후방 스피커들을 턴 온하는 것일 수도 있다. 그래머는 IoT 서버 (170) 또는 스파이 디바이스에 의해 검출될 수도 있다. IoT 서버 (170) 는 적합한 디바이스(들)에, 구성된 그래머를 검출하는 것 (예를 들어, 액션 #1 + #2 + #3) 에 응답하여 하나 이상의 정의된 액션들 (예를 들어, 액션 #4) 을 개시하도록 명령할 수도 있다.
IoT 서버 (170) 는 상이한 상호작용들의 그래머들을 서로 비교하여 IoT 디바이스들의 상이한 네트워크들의 값을 도출할 수 있다. 그래머의 심도 또는 그래머의 복잡도 (예를 들어, 콘텍스트 프리 그래머들 대 콘텍스트 그래머들) 와 같은, 그래머를 정량화하고 그래머 비교를 용이하게 하기 위한 다수의 기법들이 가능하다. 예를 들어, 얼마나 많은 수들 대 얼마나 많은 문자들이 그래머에 있는지와 같은, SEQUITUR 알고리즘에 대한 메트릭이 정의될 수 있다. 2 개의 그래머들은 그 후, 결과를 사용하여 비교될 수 있다.
선택적으로, 일단 IoT 서버 (170) 가 다양한 그래머들을 구성하면, 서버는 그래머들의 세트를 스파이 디바이스로 전송할 수 있다. 그 경우에서, 스파이 디바이스는 상호작용 검출들 대신에 그래머 검출을 IoT 서버 (170) 에 보고할 수 있다.
도 8 은 네트워크에서의 복수의 디바이스들 간의 상호작용들을 설명하기 위해 그래머를 구성하는 예시적인 플로우차트를 예시한다. 도 8 에 예시된 흐름은 IoT 서버 (170)(또는 도 1b 에서 슈퍼바이저 (130)) 에 의해 수행될 수도 있다.
810 에서, IoT 서버 (170), 구체적으로 네트워크 액세스 포트들 (404) 은 네트워크에서의 복수의 디바이스들 각각의 능력들을 수신한다. IoT 서버 (170) 는 또한, 복수의 디바이스들의 서브세트 간의 하나 이상의 상호작용들에 관한 정보를 포함하는 하나 이상의 관측을 수신할 수도 있다.
820 에서, IoT 서버 (170), 구체적으로 감소된 디바이스 리스트 생성기 (412) 는 디바이스 능력들에 기초하여 복수의 디바이스들의 그루핑들을 나타내는 감소된 디바이스 리스트를 생성한다. 감소된 디바이스 리스트를 생성하는 것은 감소된 능력들을 클러스터링하여 감소된 디바이스 리스트를 생성하는 것을 포함할 수도 있다. 디바이스 능력들을 클러스터링하는 것은 수신된 하나 이상의 관측 로그들을 나타내는 하나 이상의 피처 벡터들을 생성하는 것 및 하나 이상의 피처 벡터들을 클러스터링하여 감소된 디바이스 리스트를 생성하는 것을 포함할 수도 있다.
830 에서, IoT 서버 (170), 구체적으로 상호작용 시퀀스 모델러 (414) 는 감소된 디바이스 리스트를 사용하여 복수의 디바이스들 간의 상호작용들의 하나 이상의 시퀀스들을 모델링한다. 도 8 에 예시된 흐름 동안 또는 그 후에 일부 포인트에서, IoT 서버 (170) 는 복수의 디바이스들의 서브세트 간의 하나 이상의 상호작용들의 로그를 수신할 수도 있다. IoT 서버 (170) 는 복수의 디바이스들 중, 하나 이상의 상호작용들에 수반되지 않은 디바이스, 즉 "스파이" 디바이스로부터 로그를 수신할 수도 있다. 이 경우, 830 에서의 모델링은 하나 이상의 상호작용들의 시퀀스를 하나 이상의 센트로이드의 시퀀스에 할당하여 하나 이상의 상호작용들의 시퀀스를 모델링하는 것을 포함할 수도 있다.
840 에서, IoT 서버 (170), 구체적으로 그래머 구성 모듈 (416) 은 모델링된 상호작용들의 하나 이상의 시퀀스들에 기초하여 그래머를 구성한다. 850 에서, IoT 서버 (170) 는 IoT 서버 (170) 의 메모리, 예컨대 메모리 (403) 에 그래머를 저장한다.
도 9 는 일련의 상관된 기능 모듈들로서 표현된 예시의 서버 장치 (900) 를 예시한다. 수신하는 모듈 (902) 은, 적어도 일부 양태들에서, 본원에 논의된 바와 같은, 도 4b 에서의 네트워크 액세스 포트들 (404) 과 같은 통신 디바이스에 대응할 수도 있다. 생성하는 모듈 (904) 은, 적어도 일부 양태들에서, 예를 들어 본원에 논의된 바와 같은, 도 4b 에서의 감소된 디바이스 리스트 생성기 (412) 와 협력하는 프로세서 (401) 와 같은 프로세싱 시스템에 대응할 수도 있다. 모델링하는 모듈 (906) 은, 적어도 일부 양태들에서, 예를 들어 본원에 논의된 바와 같은, 도 4b 에서의 상호작용 시퀀스 모델러 (414) 와 협력하는 프로세서 (401) 와 같은 프로세싱 시스템에 대응할 수도 있다. 구성하는 모듈 (908) 은, 적어도 일부 양태들에서, 예를 들어 본원에 논의된 바와 같이, 도 4b 에서의 그래머 구성 모듈 (416) 과 협력하는 프로세서 (401) 와 같은 프로세싱 시스템에 대응할 수도 있다. 저장하는 모듈 (910) 은, 적어도 일부 양태들에서, 예를 들어 본원에 논의된 바와 같은, 도 4b 에서의 메모리 (403) 와 같은 메모리에 대응할 수도 있다.
도 9 의 모듈들의 기능은 본원의 교시들에 일치하는 다양한 방식들로 구현될 수도 있다. 일부 설계들에서, 이들 모듈들의 기능은 하나 이상의 전기 컴포넌트들로서 구현될 수도 있다. 일부 설계들에서, 이들 블록들의 기능은 하나 이상의 프로세서 컴포넌트들을 포함하는 프로세싱 시스템으로서 구현될 수도 있다. 일부 설계들에서, 이들 모듈들의 기능은, 예를 들어 하나 이상의 집적 회로 (예를 들어, ASIC) 의 적어도 일부를 사용하여 구현될 수도 있다. 본원에 논의된 바와 같이, 집적 회로는 프로세서, 소프트웨어, 다른 관련 컴포넌트들, 또는 그 일부 조합을 포함할 수도 있다. 따라서, 상이한 모듈들의 기능은, 예를 들어 집적 회로의 상이한 서브세트들, 소프트웨어 모듈들의 세트의 상이한 서브세트들, 또는 그 조합으로서 구현될 수도 있다. 또한, (예를 들어, 집적 회로의 및/또는 소프트웨어 모듈들의 세트의) 소정의 서브세트는 1 보다 많은 모듈에 대한 기능의 적어도 일부를 제공할 수도 있다는 것이 인식될 것이다.
또한, 도 9 에 의해 표현된 컴포넌트들 및 기능들, 뿐만 아니라 본원에 설명된 다른 컴포넌트들 및 기능들은 임의의 적합한 수단을 사용하여 구현될 수도 있다. 이러한 수단은 또한, 적어도 부분적으로, 본원에 교시된 바와 같은 대응하는 구조를 사용하여 구현될 수도 있다. 예를 들어, 도 9 의 "~를 위한 모듈" 컴포넌트들과 관련하여 전술된 컴포넌트들은 또한, 유사하게 지정된 "~하기 위한 수단" 기능에 대응할 수도 있다. 따라서, 일부 양태들에서, 이러한 수단의 하나 이상은 본원에 교시된 바와 같은 프로세서 컴포넌트들, 집적 회로들, 또는 다른 적합한 구조 중 하나 이상을 사용하여 구현될 수도 있다.
당업자는, 정보 및 신호들이 임의의 다양한 상이한 기술들 및 기법들을 사용하여 표현될 수도 있음을 인식할 것이다. 예를 들어, 상기 설명을 통해 참조될 수도 있는 데이터, 명령들, 커맨드들, 정보, 신호들, 비트들, 심볼들, 및 칩들은 전압들, 전류들, 전자기파들, 자기 필드들 또는 입자들, 광학 필드들 또는 입자들, 이들의 임의의 조합에 의해 표현될 수도 있다.
또한, 당업자는, 본원에 개시된 양태들과 연계하여 설명된 다양한 예시적인 논리 블록들, 모듈들, 회로들, 및 알고리즘 단계들이 전자 하드웨어, 컴퓨터 소프트웨어, 또는 양자 모두의 조합으로서 구현될 수도 있음을 인식할 것이다. 하드웨어와 소프트웨어의 이러한 상호교환성을 명확하게 설명하기 위해, 다양한 예시적인 컴포넌트들, 블록들, 모듈들, 회로들, 및 단계들이 그들의 기능에 대하여 일반적으로 전술되었다. 이러한 기능이 하드웨어 또는 소프트웨어로 구현되는지 여부는 특정 애플리케이션 및 전체 시스템에 부과되는 설계 제약들에 의존한다. 당업자는, 설명된 기능을 각각의 특정 애플리케이션에 대해 다양한 방식으로 구현할 수도 있지만, 이러한 구현 결정은 본 개시물의 범위를 벗어나게 하는 것으로 해석되어서는 안된다.
본원에서 개시된 양태들과 연계하여 설명된 다양한 예시적인 논리 블록들, 모듈들, 및 회로들은 범용 프로세서, 디지털 신호 프로세서 (DSP), 주문형 집적 회로 (ASIC), 필드 프로그램가능 게이트 어레이 (FPGA) 또는 다른 프로그램가능 로직 디바이스, 이산 게이트 또는 트랜지스터 로직, 이산 하드웨어 컴포넌트들, 또는 본원에 설명된 기능들을 수행하도록 설계된 것들의 임의의 조합에 의해 구현되거나 수행될 수도 있다. 범용 프로세서는 마이크로프로세서일 수도 있지만, 대안으로 이 프로세서는 임의의 종래의 프로세서, 제어기, 마이크로제어기, 또는 상태 머신일 수도 있다. 프로세서는 또한, 컴퓨팅 디바이스들의 조합 (예를 들어, DSP와 마이크로프로세서의 조합, 복수의 마이크로프로세서들, DSP 코어와 연계한 하나 이상의 마이크로프로세서들, 또는 임의의 다른 그러한 구성) 으로서 구현될 수도 있다.
본원에 개시된 양태들과 연계하여 설명된 방법들, 시퀀스들, 및/또는 알고리즘들은 하드웨어에서, 프로세서에 의해 실행되는 소프트웨어 모듈에서, 또는 둘의 조합에서 직접적으로 구현될 수도 있다. 소프트웨어 모듈은 RAM, 플래시 메모리, ROM, EPROM, EEPROM, 레지스터들, 하드 디스크, 착탈형 디스크, CD-ROM, 또는 당해 기술에 알려진 임의의 다른 형태의 저장 매체 내에 상주할 수도 있다. 예시적인 저장 매체는 프로세서에 커플링되어, 프로세가 저장 매체로부터 정보를 판독하고 저장 매체에 정보를 기입할 수 있다. 대안으로, 저장 매체는 프로세서에 통합될 수도 있다. 프로세서와 저장 매체는 ASIC 내에 상주할 수도 있다. ASIC 는 IoT 디바이스 내에 상주할 수도 있다. 대안으로, 프로세서와 저장 매체는 사용자 단말기에서 개별 컴포넌트들로서 상주할 수도 있다.
하나 이상의 예시적인 양태들에서, 설명된 기능들은 하드웨어, 소프트웨어, 펌웨어 또는 이들의 임의의 조합으로 구현될 수도 있다. 소프트웨어로 구현되는 경우, 기능들은 하나 이상의 명령들 또는 코드로서 컴퓨터 판독 가능 매체 상에 저장되거나 또는 전송될 수도 있다. 컴퓨터 판독가능 매체는 한 장소에서 다른 장소로 컴퓨터 프로그램의 전송을 용이하게 하는 임의의 매체를 포함하는 컴퓨터 저장 매체 및 통신 매체 양자 모두를 포함한다. 저장 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 이용 가능한 매체일 수도 있다. 비제한적인 예로서, 이러한 컴퓨터 판독가능 저장 매체는 RAM, ROM, EEPROM, CD-ROM 또는 다른 광학 디스크 저장 디바이스, 자기 디스크 저장 디바이스 또는 다른 자기 저장 디바이스, 또는 원하는 프로그램 코드를 명령들 또는 데이터 구조들의 형태로 반송 또는 저장하는데 사용될 수 있으며 컴퓨터에 의해 액세스될 수 있는 임의의 다른 매체를 포함할 수 있다. 또한, 임의의 접속이 컴퓨터 판독가능 매체라고 적절히 칭해진다. 예를 들어, 소프트웨어가 동축 케이블, 광섬유 케이블, 연선, DSL, 또는 적외선, 무선, 및 마이크로파와 같은 무선 기술들을 사용하여 웹사이트, 서버, 또는 다른 원격 소스로부터 송신되면, 동축 케이블, 광섬유 케이블, 연선, DSL, 또는 적외선, 무선, 및 마이크로파와 같은 무선 기술들은 매체의 정의 내에 포함된다. 본원에서 사용된 디스크 (disk) 와 디스크 (disc) 는, CD, 레이저 디스크, 광학 디스크, DVD, 플로피 디스크 및 블루레이 디스크를 포함하며, 여기서 디스크 (disk) 들은 통상 자기적으로 데이터를 재생하고/하거나, 디스크(disc) 들은 레이저들을 이용하여 광학적으로 데이터를 재생한다. 상기의 조합들은 또한, 컴퓨터 판독가능 매체의 범위 내에 포함되어야 한다.
상기 개시물은 본 개시물의 예시적인 양태들을 나타내지만, 첨부된 청구항들에 의해 정의된 본 개시물의 범위로부터 벗어나지 않으면서 다양한 변경들 및 수정들이 본원에서 이루어질 수 있음이 유의되어야 한다. 본원에 설명된 본 개시물의 양태에 따른 방법 청구항들의 기능들, 단계들 및/또는 액션들은 임의의 특정한 순서로 수행될 필요는 없다. 또한, 본 개시물의 엘리먼트들이 단수형으로 설명되거나 주장될 수도 있으나, 단수형에 대한 제한이 명시적으로 언급되지 않는 한, 복수형이 고려된다.

Claims (30)

  1. 네트워크에서의 복수의 디바이스들 간의 상호작용들을 설명하기 위한 그래머를 구성하는 방법으로서,
    디바이스의 네트워크 인터페이스에 의해, 상기 복수의 디바이스들 각각의 디바이스 능력들을 수신하는 단계;
    상기 디바이스의 감소된 디바이스 리스트 생성기에 의해, 상기 디바이스 능력들에 기초하여 상기 복수의 디바이스들의 그루핑들을 나타내는 감소된 디바이스 리스트를 생성하는 단계;
    상기 디바이스의 상호작용 시퀀스 모델러에 의해, 상기 감소된 디바이스 리스트를 사용하여 상기 복수의 디바이스들 간의 상호작용들의 하나 이상의 시퀀스들을 모델링하는 단계;
    상기 디바이스의 그래머 구성 모듈에 의해, 모델링된 상기 상호작용들의 하나 이상의 시퀀스들에 기초하여 상기 그래머를 구성하는 단계; 및
    상기 그래머를 상기 디바이스의 메모리에 저장하는 단계를 포함하는, 그래머를 구성하는 방법.
  2. 제 1 항에 있어서,
    상기 감소된 디바이스 리스트를 생성하는 단계는, 상기 감소된 디바이스 리스트를 생성하도록 상기 디바이스 능력들을 클러스터링하는 단계를 포함하는, 그래머를 구성하는 방법.
  3. 제 2 항에 있어서,
    하나 이상의 관측 로그들을 수신하는 단계를 더 포함하고,
    상기 하나 이상의 관측 로그들은 상기 복수의 디바이스들의 서브세트 간의 하나 이상의 상호작용들에 관한 정보를 포함하는, 그래머를 구성하는 방법.
  4. 제 3 항에 있어서,
    상기 클러스터링하는 단계는,
    수신된 상기 하나 이상의 관측 로그들을 나타내는 하나 이상의 피처 벡터들을 생성하는 단계; 및
    상기 하나 이상의 피처 벡터들을 클러스터링하여 상기 감소된 디바이스 리스트를 생성하는 단계를 포함하는, 그래머를 구성하는 방법.
  5. 제 1 항에 있어서,
    상기 복수의 디바이스들의 서브세트 간의 하나 이상의 상호작용들의 로그를 수신하는 단계를 더 포함하는, 그래머를 구성하는 방법.
  6. 제 5 항에 있어서,
    상기 로그는 상기 복수의 디바이스들 중 상기 하나 이상의 상호작용들에 수반되지 않은 디바이스로부터 수신되는, 그래머를 구성하는 방법.
  7. 제 5 항에 있어서,
    상기 상호작용들의 하나 이상의 시퀀스들을 모델링하는 단계는,
    하나 이상의 상호작용들의 시퀀스를 하나 이상의 센트로이드들의 시퀀스에 할당하여 상기 상호작용들의 하나 이상의 시퀀스들을 모델링하는 단계를 포함하는, 그래머를 구성하는 방법.
  8. 제 1 항에 있어서,
    상기 디바이스는 사물 인터넷 (Internet of Things; IoT) 서버를 포함하는, 그래머를 구성하는 방법.
  9. 제 1 항에 있어서,
    상기 디바이스는 IoT 서버 외에, 상기 네트워크에서의 슈퍼바이저 디바이스를 포함하는, 그래머를 구성하는 방법.
  10. 제 1 항에 있어서,
    상기 복수의 디바이스들은 복수의 IoT 디바이스들을 포함하는, 그래머를 구성하는 방법.
  11. 네트워크에서의 복수의 디바이스들 간의 상호작용들을 설명하기 위한 그래머를 구성하기 위한 장치로서,
    상기 복수의 디바이스들 각각의 디바이스 능력들을 수신하도록 구성된 네트워크 인터페이스;
    상기 디바이스 능력들에 기초하여 상기 복수의 디바이스들의 그루핑들을 나타내는 감소된 디바이스 리스트를 생성하도록 구성된 감소된 디바이스 리스트 생성기;
    상기 감소된 디바이스 리스트를 사용하여 상기 복수의 디바이스들 간의 상호작용들의 하나 이상의 시퀀스들을 모델링하도록 구성된 상호작용 시퀀스 모델러;
    모델링된 상기 상호작용들의 하나 이상의 시퀀스들에 기초하여 상기 그래머를 구성하도록 구성된 그래머 구성 모듈; 및
    상기 그래머를 저장하도록 구성된 메모리를 포함하는, 그래머를 구성하기 위한 장치.
  12. 제 11 항에 있어서,
    상기 감소된 디바이스 리스트 생성기가 상기 감소된 디바이스 리스트를 생성하도록 구성되는 것은, 상기 감소된 디바이스 리스트 생성기가 상기 감소된 디바이스 리스트를 생성하기 위해 상기 디바이스 능력들을 클러스터링하도록 구성되는 것을 포함하는, 그래머를 구성하기 위한 장치.
  13. 제 12 항에 있어서,
    상기 네트워크 인터페이스는 또한, 하나 이상의 관측 로그들을 수신하도록 구성되고,
    상기 하나 이상의 관측 로그들은 상기 복수의 디바이스들의 서브세트 간의 하나 이상의 상호작용들에 관한 정보를 포함하는, 그래머를 구성하기 위한 장치.
  14. 제 13 항에 있어서,
    상기 감소된 디바이스 리스트 생성기가 상기 디바이스 능력들을 클러스터링하도록 구성되는 것은, 상기 감소된 디바이스 리스트 생성기가,
    수신된 상기 하나 이상의 관측 로그들을 나타내는 하나 이상의 피처 벡터들을 생성하며;
    상기 하나 이상의 피처 벡터들을 클러스터링하여 상기 감소된 디바이스 리스트를 생성하도록 구성되는 것을 포함하는, 그래머를 구성하기 위한 장치.
  15. 제 11 항에 있어서,
    상기 네트워크 인터페이스는 또한, 상기 복수의 디바이스들의 서브세트 간의 하나 이상의 상호작용들의 로그를 수신하도록 구성되는, 그래머를 구성하기 위한 장치.
  16. 제 15 항에 있어서,
    상기 로그는 상기 복수의 디바이스들 중 상기 하나 이상의 상호작용들에 수반되지 않은 디바이스로부터 수신되는, 그래머를 구성하기 위한 장치.
  17. 제 15 항에 있어서,
    상기 상호작용 시퀀스 모델러가 상기 상호작용들의 하나 이상의 시퀀스들을 모델링하도록 구성되는 것은,
    상기 상호작용 시퀀스 모델러가 하나 이상의 상호작용들의 시퀀스를 하나 이상의 센트로이드들의 시퀀스에 할당하여 상기 상호작용들의 하나 이상의 시퀀스들을 모델링하도록 구성되는 것을 포함하는, 그래머를 구성하기 위한 장치.
  18. 제 11 항에 있어서,
    상기 장치는 사물 인터넷 (IoT) 서버를 포함하는, 그래머를 구성하기 위한 장치.
  19. 제 11 항에 있어서,
    상기 장치는 IoT 서버 외에, 상기 네트워크에서의 슈퍼바이저 디바이스를 포함하는, 그래머를 구성하기 위한 장치.
  20. 제 11 항에 있어서,
    상기 복수의 디바이스들은 복수의 IoT 디바이스들을 포함하는, 그래머를 구성하기 위한 장치.
  21. 네트워크에서의 복수의 디바이스들 간의 상호작용들을 설명하기 위한 그래머를 구성하기 위한 장치로서,
    디바이스의 네트워크 인터페이스에 의해, 상기 복수의 디바이스들 각각의 디바이스 능력들을 수신하는 수단;
    상기 디바이스의 감소된 디바이스 리스트 생성기에 의해, 상기 디바이스 능력들에 기초하여 상기 복수의 디바이스들의 그루핑들을 나타내는 감소된 디바이스 리스트를 생성하는 수단;
    상기 디바이스의 상호작용 시퀀스 모델러에 의해, 상기 감소된 디바이스 리스트를 사용하여 상기 복수의 디바이스들 간의 상호작용들의 하나 이상의 시퀀스들을 모델링하는 수단;
    상기 디바이스의 그래머 구성 모듈에 의해, 모델링된 상기 상호작용들의 하나 이상의 시퀀스들에 기초하여 상기 그래머를 구성하는 수단; 및
    상기 그래머를 상기 장치의 메모리에 저장하는 수단을 포함하는, 그래머를 구성하기 위한 장치.
  22. 제 21 항에 있어서,
    상기 감소된 디바이스 리스트를 생성하는 수단은, 상기 감소된 디바이스 리스트를 생성하도록 상기 디바이스 능력들을 클러스터링하는 수단을 포함하는, 그래머를 구성하기 위한 장치.
  23. 제 22 항에 있어서,
    하나 이상의 관측 로그들을 수신하는 수단을 더 포함하고,
    상기 하나 이상의 관측 로그들은 상기 복수의 디바이스들의 서브세트 간의 하나 이상의 상호작용들에 관한 정보를 포함하는, 그래머를 구성하기 위한 장치.
  24. 제 23 항에 있어서,
    상기 클러스터링하는 수단은,
    수신된 상기 하나 이상의 관측 로그들을 나타내는 하나 이상의 피처 벡터들을 생성하는 수단; 및
    상기 하나 이상의 피처 벡터들을 클러스터링하여 상기 감소된 디바이스 리스트를 생성하는 수단을 포함하는, 그래머를 구성하기 위한 장치.
  25. 네트워크에서의 복수의 디바이스들 간의 상호작용들을 설명하기 위한 그래머를 구성하기 위한 비일시적 컴퓨터 판독가능 매체로서,
    디바이스의 네트워크 인터페이스에 의해, 상기 복수의 디바이스들 각각의 디바이스 능력들을 수신하기 위한 적어도 하나의 명령;
    상기 디바이스의 감소된 디바이스 리스트 생성기에 의해, 상기 디바이스 능력들에 기초하여 상기 복수의 디바이스들의 그루핑들을 나타내는 감소된 디바이스 리스트를 생성하기 위한 적어도 하나의 명령;
    상기 디바이스의 상호작용 시퀀스 모델러에 의해, 상기 감소된 디바이스 리스트를 사용하여 상기 복수의 디바이스들 간의 상호작용들의 하나 이상의 시퀀스들을 모델링하기 위한 적어도 하나의 명령;
    상기 디바이스의 그래머 구성 모듈에 의해, 모델링된 상기 상호작용들의 하나 이상의 시퀀스들에 기초하여 상기 그래머를 구성하기 위한 적어도 하나의 명령; 및
    상기 그래머를 상기 디바이스의 메모리에 저장하기 위한 적어도 하나의 명령을 포함하는, 비일시적 컴퓨터 판독가능 매체.
  26. 제 25 항에 있어서,
    상기 감소된 디바이스 리스트를 생성하기 위한 적어도 하나의 명령은, 상기 감소된 디바이스 리스트를 생성하도록 상기 디바이스 능력들을 클러스터링하기 위한 적어도 하나의 명령을 포함하는, 비일시적 컴퓨터 판독가능 매체.
  27. 제 26 항에 있어서,
    하나 이상의 관측 로그들을 수신하기 위한 적어도 하나의 명령을 더 포함하고,
    상기 하나 이상의 관측 로그들은 상기 복수의 디바이스들의 서브세트 간의 하나 이상의 상호작용들에 관한 정보를 포함하는, 비일시적 컴퓨터 판독가능 매체.
  28. 제 27 항에 있어서,
    상기 클러스터링하기 위한 적어도 하나의 명령은,
    수신된 상기 하나 이상의 관측 로그들을 나타내는 하나 이상의 피처 벡터들을 생성하기 위한 적어도 하나의 명령; 및
    상기 하나 이상의 피처 벡터들을 클러스터링하여 상기 감소된 디바이스 리스트를 생성하기 위한 적어도 하나의 명령을 포함하는, 비일시적 컴퓨터 판독가능 매체.
  29. 제 25 항에 있어서,
    상기 복수의 디바이스들의 서브세트 간의 하나 이상의 상호작용들의 로그를 수신하기 위한 적어도 하나의 명령을 더 포함하는, 비일시적 컴퓨터 판독가능 매체.
  30. 제 29 항에 있어서,
    상기 상호작용들의 하나 이상의 시퀀스들을 모델링하기 위한 적어도 하나의 명령은,
    하나 이상의 상호작용들의 시퀀스를 하나 이상의 센트로이드들의 시퀀스에 할당하여 상기 상호작용들의 하나 이상의 시퀀스들을 모델링하기 위한 적어도 하나의 명령을 포함하는, 비일시적 컴퓨터 판독가능 매체.
KR1020167021420A 2014-01-10 2015-01-08 생성된 그래머의 복잡도를 측정함으로써 디바이스들의 현행 네트워크의 홀리스틱 값을 정량화하는 방법들 및 장치들 KR20160106136A (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201461926162P 2014-01-10 2014-01-10
US61/926,162 2014-01-10
US14/591,458 2015-01-07
US14/591,458 US9600465B2 (en) 2014-01-10 2015-01-07 Methods and apparatuses for quantifying the holistic value of an existing network of devices by measuring the complexity of a generated grammar
PCT/US2015/010641 WO2015105988A1 (en) 2014-01-10 2015-01-08 Methods and apparatuses for quantifying the holistic value of an existing network of devices by measuring the complexity of a generated grammar

Publications (1)

Publication Number Publication Date
KR20160106136A true KR20160106136A (ko) 2016-09-09

Family

ID=53521529

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020167021420A KR20160106136A (ko) 2014-01-10 2015-01-08 생성된 그래머의 복잡도를 측정함으로써 디바이스들의 현행 네트워크의 홀리스틱 값을 정량화하는 방법들 및 장치들

Country Status (7)

Country Link
US (1) US9600465B2 (ko)
EP (1) EP3092778A1 (ko)
JP (1) JP6452707B2 (ko)
KR (1) KR20160106136A (ko)
CN (1) CN105900402B (ko)
BR (1) BR112016015964A2 (ko)
WO (1) WO2015105988A1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10037374B2 (en) 2015-01-30 2018-07-31 Qualcomm Incorporated Measuring semantic and syntactic similarity between grammars according to distance metrics for clustered data
US11768823B2 (en) * 2016-02-17 2023-09-26 Verizon Patent And Licensing Inc. Rules execution system for IoT devices
WO2020068877A1 (en) * 2018-09-24 2020-04-02 Michelle Archuleta Reinforcement learning approach to approximate a mental map of formal logic

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5958010A (en) * 1997-03-20 1999-09-28 Firstsense Software, Inc. Systems and methods for monitoring distributed applications including an interface running in an operating system kernel
US7356462B2 (en) 2001-07-26 2008-04-08 At&T Corp. Automatic clustering of tokens from a corpus for grammar acquisition
US20020032564A1 (en) 2000-04-19 2002-03-14 Farzad Ehsani Phrase-based dialogue modeling with particular application to creating a recognition grammar for a voice-controlled user interface
WO2003050799A1 (en) 2001-12-12 2003-06-19 International Business Machines Corporation Method and system for non-intrusive speaker verification using behavior models
US7647645B2 (en) 2003-07-23 2010-01-12 Omon Ayodele Edeki System and method for securing computer system against unauthorized access
KR100808347B1 (ko) 2003-11-17 2008-02-27 가부시키가이샤 인테리젠토 웨이브 부정조작 판정시스템 및 부정조작 판정방법
US8214398B1 (en) 2005-02-16 2012-07-03 Emc Corporation Role based access controls
US8204995B2 (en) * 2005-06-29 2012-06-19 Nokia Corporation Multidevice session establishment for multimodal browsing
US8286254B2 (en) 2005-11-16 2012-10-09 Cisco Technology, Inc. Behavioral learning for interactive user security
US8630965B2 (en) 2006-04-06 2014-01-14 Yale University Framework of hierarchical sensory grammars for inferring behaviors using distributed sensors
US20070255818A1 (en) 2006-04-29 2007-11-01 Kolnos Systems, Inc. Method of detecting unauthorized access to a system or an electronic device
US8027946B1 (en) 2006-12-22 2011-09-27 Avaya Inc. Higher order logic applied to expert systems for alarm analysis, filtering, correlation and root cause
JP2009004877A (ja) * 2007-06-19 2009-01-08 Toshiba Corp データ伝送装置およびデータ伝送方法
US20090293121A1 (en) 2008-05-21 2009-11-26 Bigus Joseph P Deviation detection of usage patterns of computer resources
US8214364B2 (en) 2008-05-21 2012-07-03 International Business Machines Corporation Modeling user access to computer resources
JP5169614B2 (ja) * 2008-08-19 2013-03-27 富士通株式会社 システム分析プログラム、システム分析装置、システム分析方法
US20100228767A1 (en) 2009-02-06 2010-09-09 Slinker Scott W Determining relationships between individuals in a database
JP2010262365A (ja) * 2009-04-30 2010-11-18 Toshiba Corp モデル検査有効性計測装置
US8972325B2 (en) 2009-07-01 2015-03-03 Oracle International Corporation Role based identity tracker
US8245301B2 (en) 2009-09-15 2012-08-14 Lockheed Martin Corporation Network intrusion detection visualization
US20110119104A1 (en) * 2009-11-17 2011-05-19 Xerox Corporation Individualized behavior-based service bundling and pricing
US20130173062A1 (en) 2009-12-08 2013-07-04 Pamela Koenig-Richardson Smart building unified managed solutions
US9703953B2 (en) 2010-11-29 2017-07-11 Biocatch Ltd. Method, device, and system of differentiating among users based on user classification
US8551186B1 (en) 2010-12-06 2013-10-08 Amazon Technologies, Inc. Audible alert for stolen user devices
US8689350B2 (en) 2011-09-24 2014-04-01 Elwha Llc Behavioral fingerprint controlled theft detection and recovery
US20140123249A1 (en) 2012-10-31 2014-05-01 Elwha LLC, a limited liability corporation of the State of Delaware Behavioral Fingerprinting Via Corroborative User Device
US9166908B2 (en) 2011-12-20 2015-10-20 Cisco Technology, Inc. Assisted intelligent routing for minimalistic connected object networks
US20130291099A1 (en) 2012-04-25 2013-10-31 Verizon Patent And Licensing, Inc. Notification services with anomaly detection
US9589280B2 (en) 2013-07-17 2017-03-07 PlaceIQ, Inc. Matching anonymized user identifiers across differently anonymized data sets
US10129242B2 (en) 2013-09-16 2018-11-13 Airwatch Llc Multi-persona devices and management
US9220011B1 (en) 2013-11-06 2015-12-22 Sprint Communications Company L.P. Electronic device theft self-detection and locking
US10037374B2 (en) 2015-01-30 2018-07-31 Qualcomm Incorporated Measuring semantic and syntactic similarity between grammars according to distance metrics for clustered data
US9536072B2 (en) 2015-04-09 2017-01-03 Qualcomm Incorporated Machine-learning behavioral analysis to detect device theft and unauthorized device usage

Also Published As

Publication number Publication date
US9600465B2 (en) 2017-03-21
BR112016015964A2 (pt) 2017-08-08
CN105900402A (zh) 2016-08-24
EP3092778A1 (en) 2016-11-16
JP6452707B2 (ja) 2019-01-16
US20150199330A1 (en) 2015-07-16
JP2017508335A (ja) 2017-03-23
CN105900402B (zh) 2018-12-18
WO2015105988A1 (en) 2015-07-16

Similar Documents

Publication Publication Date Title
EP2959663B1 (en) Controlling many different devices from a smart controller
EP3266159B1 (en) Behavioral analysis to automate direct and indirect local monitoring of internet of things device health
US9609062B2 (en) Semantic mappings from human readable messages to programmatic interfaces
AU2015301975B2 (en) Method and apparatus for automatically generating an events dictionary in an Internet of Things (IoT) network
EP2959642B1 (en) Adaptive and extensible universal schema for heterogeneous internet of things (iot) devices
US9906605B2 (en) Enhanced DNS-based service discovery in an internet of things (IoT) environment
KR20160108398A (ko) 인접하는 피어 투 피어 디바이스들의 패턴 매칭을 이용한 실내 로케이션의 결정
US20150121470A1 (en) Peer-to-peer onboarding of internet of things (iot) devices over various communication interfaces
US10846705B2 (en) Automating customer service an internet of everything environment
EP3152882B1 (en) Determining trust levels on a device receiving authorization
US9600465B2 (en) Methods and apparatuses for quantifying the holistic value of an existing network of devices by measuring the complexity of a generated grammar

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid