KR101770083B1 - 물리적인 iot 디바이스를 식별하는 방법 및 장치 - Google Patents

물리적인 iot 디바이스를 식별하는 방법 및 장치 Download PDF

Info

Publication number
KR101770083B1
KR101770083B1 KR1020167012697A KR20167012697A KR101770083B1 KR 101770083 B1 KR101770083 B1 KR 101770083B1 KR 1020167012697 A KR1020167012697 A KR 1020167012697A KR 20167012697 A KR20167012697 A KR 20167012697A KR 101770083 B1 KR101770083 B1 KR 101770083B1
Authority
KR
South Korea
Prior art keywords
iot device
iot
image
user
information
Prior art date
Application number
KR1020167012697A
Other languages
English (en)
Other versions
KR20160086332A (ko
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 KR20160086332A publication Critical patent/KR20160086332A/ko
Application granted granted Critical
Publication of KR101770083B1 publication Critical patent/KR101770083B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/2807Exchanging configuration information on appliance services in a home automation network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/303Terminal profiles
    • H04N5/23206
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y04INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
    • Y04SSYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
    • Y04S40/00Systems for electrical power generation, transmission, distribution or end-user application management characterised by the use of communication or information technologies, or communication or information technology specific aspects supporting them
    • Y04S40/18Network protocols supporting networked applications, e.g. including control of end-device applications over a network

Abstract

본 개시물은 IoT 디바이스의 이미지로 사물 인터넷 (IoT) 디바이스를 식별하는 것에 관련된 것이다. 사용자 디바이스는 IoT 디바이스의 이미지를 캡쳐하고 그 이미지를 사용자 디바이스로부터 IoT 디바이스로 송신하며, 상기 IoT 디바이스의 이미지는 IoT 디바이스를 둘러싼 환경 중 적어도 일부분을 포함하며 IoT 디바이스는 이미지를 IoT 디바이스를 식별하는 정보와 연관시킨다. IoT 디바이스는 사용자 디바이스로부터 IoT 디바이스의 이미지를 수신하고, IoT 디바이스의 이미지를 저장하고, 그리고 IoT 디바이스의 이미지를 IoT 디바이스를 식별하는 정보와 연관시킨다.

Description

물리적인 IOT 디바이스를 식별하는 방법 및 장치{METHOD AND APPARATUS FOR IDENTIFYING A PHYSICAL IOT DEVICE}
관련 출원들에 대한 상호-참조
본 특허 출원은 "METHOD AND APPARATUS FOR IDENTIFYING A PHYSICAL IOT DEVICE"란 발명의 명칭으로, 2013년 11월 14일자에 출원되어, 본 양수인에게 양도되고, 본원에 참조로 전체적으로 명시적으로 포함된, 가출원 번호 제 61/904,338호의 이익을 주장한다.
기술 분야
본 개시물은 물리적인 IoT 디바이스를 식별하는 것에 관한 것이다.
인터넷은 표준 인터넷 프로토콜 슈트 (예컨대, 송신 제어 프로토콜 (TCP) 및 인터넷 프로토콜 (IP)) 를 이용하여 서로 통신하는 상호접속된 컴퓨터들 및 컴퓨터 네트워크들의 글로벌 시스템 (global system) 이다. 사물 인터넷 (IoT) 은, 꼭 컴퓨터들 및 컴퓨터 네트워크들이 아닌, 일상 오브젝트들이 IoT 통신 네트워크 (예컨대, 애드-혹 시스템 또는 인터넷) 를 통해서 판독가능하고, 인식가능하고, 로케이트가능하고, 어드레스가능하고, 그리고 제어가능할 수 있다는 아이디어에 기초한다.
다수의 시장 트렌드들이 IoT 디바이스들의 발달을 촉진시키고 있다. 예를 들어, 증가하는 에너지 비용들이 스마트 그리드들에의 정부들의 전략적 투자들, 및 미래 소비에 대한, 예컨대 전기 운송체들 및 공공 충전소들에 대한 지원을 촉진시키고 있다. 증가하는 건강 관리 비용들 및 노화하는 인구 (aging populations) 가 원격/접속된 건강 관리 및 피트니스 서비스들에 대한 발달을 촉진시키고 있다. 홈에서의 기술 혁명은 'N' 플레이 (예컨대, 데이터, 보이스, 비디오, 보안, 에너지 관리, 등) 를 마케팅하고 홈 네트워크들을 확장하는 서비스 제공자들에 의한 통합을 포함한, 새로운 "스마트" 서비스들에 대한 발달을 촉진시키고 있다. 빌딩들은 기업 설비들에 대한 운영 비용들을 감소시키려는 수단으로서 더 스마트하고 더 편리해지고 있다.
IoT 에 대한 다수의 주요 애플리케이션들이 존재한다. 예를 들어, 스마트 그리드들 및 에너지 관리의 영역에서, 공익 기업들은 홈들 및 기업들로의 에너지의 전달을 최적화하는 동시에, 고객들은 에너지 사용을 더 잘 관리할 수 있다. 홈 및 빌딩 자동화의 영역에서, 스마트 홈들 및 빌딩들은 사실상, 홈 또는 사무실에서의 임의의 디바이스 또는 시스템을 통해, 가전제품들로부터 플러그-인 전기 자동차 (PEV) 보안 시스템들까지 중앙집중화된 제어를 행할 수 있다. 자산 추적의 분야에서, 기업들, 병원들, 공장들, 및 다른 큰 조직들은 고가 장비, 환자들, 운송체들 등의 로케이션들을 정확하게 추적할 수 있다. 건강 및 웰니스 (wellness) 의 영역에서, 의사들은 환자들의 건강을 원격으로 모니터링할 수 있으며, 한편 사람은 피트니스 루틴들의 진행을 추적할 수 있다.
다음은 본원에서 개시되는 하나 이상의 양태들 및/또는 실시형태들에 관련된 간단한 요약을 제시한다. 이와 같이, 다음 요약은 모든 고려된 양태들 및/또는 실시형태들에 관한 광범위한 개관으로 간주되지 않아야 하며, 다음 요약은 모든 고려된 양태들 및/또는 실시형태들에 관한 중요하거나 또는 중대한 엘리먼트들을 식별하거나 또는 임의의 특정의 양태 및/또는 실시형태와 연관되는 범위를 정확하게 서술하는 것으로 간주되지 않아야 한다. 따라서, 다음 요약은 아래에서 제시되는 상세한 설명에 선행하여 본원에서 개시되는 하나 이상의 양태들 및/또는 실시형태들에 관한 어떤 컨셉들을 간단한 형태로 제시하는 유일한 목적을 갖는다.
본 개시물은 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 디바이스를 둘러싼 환경 중 적어도 일부분을 포함하는, 상기 수신하는 수단; IoT 디바이스의 이미지를 저장하는 수단; 및 IoT 디바이스의 이미지를 IoT 디바이스를 식별하는 정보와 연관시키는 수단을 포함한다.
IoT 디바이스의 이미지로 IoT 디바이스를 식별하는 비일시성 컴퓨터-판독가능 매체는, 사용자 디바이스에 의해, IoT 디바이스의 이미지를 캡쳐하도록 하는 적어도 하나의 명령으로서, 상기 IoT 디바이스의 이미지는 IoT 디바이스를 둘러싼 환경 중 적어도 일부분을 포함하는, 상기 캡쳐하도록 하는 적어도 하나의 명령; 및 이미지를 사용자 디바이스로부터 IoT 디바이스로 송신하도록 하는 적어도 하나의 명령으로서, 상기 IoT 디바이스는 이미지를 IoT 디바이스를 식별하는 정보와 연관시키는, 상기 송신하도록 하는 적어도 하나의 명령을 포함한다.
IoT 디바이스의 이미지로 IoT 디바이스를 식별하는 비일시성 컴퓨터-판독가능 매체는, IoT 디바이스에 의해, 사용자 디바이스로부터 IoT 디바이스의 이미지를 수신하도록 하는 적어도 하나의 명령으로서, 상기 IoT 디바이스의 이미지는 IoT 디바이스를 둘러싼 환경 중 적어도 일부분을 포함하는, 상기 수신하도록 하는 적어도 하나의 명령; IoT 디바이스의 이미지를 저장하도록 하는 적어도 하나의 명령, 및 IoT 디바이스의 이미지를 IoT 디바이스를 식별하는 정보와 연관시키는 적어도 하나의 명령을 포함한다.
본원에서 개시된 메커니즘들과 연관되는 다른 목적들 및 이점들은 첨부 도면들 및 상세한 설명에 기초하여 당업자들에게 자명할 것이다.
본 개시물의 양태들 및 이의 부수하는 이점들 중 많은 이점들의 좀더 충분한 이해는, 본 개시물의 한정이 아닌, 오직 예시를 위해 제시되는 첨부 도면들과 관련하여 고려될 때 다음 상세한 설명에 대한 참조에 의해 더 잘 이해되게 되므로, 용이하게 얻어질 것이다:
도 1a 는 본 개시물의 양태에 따른 무선 통신 시스템의 하이-레벨 시스템 아키텍처를 예시한다.
도 1b 는 본 개시물의 다른 양태에 따른 무선 통신 시스템의 하이-레벨 시스템 아키텍처를 예시한다.
도 1c 는 본 개시물의 양태에 따른 무선 통신 시스템의 하이-레벨 시스템 아키텍처를 예시한다.
도 1d 는 본 개시물의 양태에 따른 무선 통신 시스템의 하이-레벨 시스템 아키텍처를 예시한다.
도 1e 는 본 개시물의 양태에 따른 무선 통신 시스템의 하이-레벨 시스템 아키텍처를 예시한다.
도 2a 는 본 개시물의 양태들에 따른 예시적인 사물 인터넷 (IoT) 디바이스를 예시하며, 한편 도 2b 는 본 개시물의 양태들에 따른 예시적인 수동 IoT 디바이스를 예시한다.
도 3 은 본 개시물의 양태에 따른 기능을 수행하도록 구성된 로직을 포함하는 통신 디바이스를 예시한다.
도 4 는 본 개시물의 여러 양태들에 따른, 예시적인 서버를 예시한다.
도 5 는 본 개시물의 일 양태에 따른, 발견가능한 피어-투-피어 (P2P) 서비스들을 지원할 수도 있는 무선 통신 네트워크를 예시한다.
도 6 은 본 개시물의 일 양태에 따른, 여러 디바이스들이 통신할 수도 있는 근접도-기반의 분산된 버스를 확립하는데, 발견가능한 P2P 서비스들이 사용될 수도 있는 예시적인 환경을 예시한다.
도 7 은 본 개시물의 일 양태에 따른, 여러 디바이스들이 통신할 수도 있는 근접도-기반의 분산된 버스를 확립하는데, 발견가능한 P2P 서비스들이 사용될 수도 있는 예시적인 메시지 시퀀스를 예시한다.
도 8 은 본 개시물의 일 양태에 따른, 발견가능한 P2P 서비스들이 Wi-Fi 네트워크를 통해서 헤드리스 디바이스들의 원격 온보딩을 가능하게 하는데 사용될 수도 있는 예시적인 시스템 아키텍처를 예시한다.
도 9a 내지 도 9b 는 본 개시물의 일 양태에 따른, 발견가능한 P2P 서비스들이 Wi-Fi 네트워크를 통해서 헤드리스 디바이스들의 원격 온보딩을 가능하게 하는데 사용될 수도 있는 예시적인 메시지 시퀀스들을 예시한다.
도 10 은 본 개시물의 일 양태에 따른, 온보더 디바이스 (onboarder device) 가 발견가능한 P2P 서비스들을 이용하여 Wi-Fi 네트워크를 통해서 온보디 디바이스 (onboardee device) 를 원격으로 온보드할 수도 있는 예시적인 방법을 예시한다.
도 11 은 본 개시물의 일 양태에 따른, 온보디 디바이스가 발견가능한 P2P 서비스들을 이용하여 Wi-Fi 네트워크를 통해서 원격으로 온보드할 수도 있는 예시적인 방법을 예시한다.
도 12 는 온보디 디바이스의 이미지로 온보디 디바이스를 식별하는 예시적인 흐름을 예시한다.
도 13 - 도 14 는 본 개시물의 일 양태에 따른, IoT 디바이스의 이미지로 IoT 디바이스를 식별하는 예시적인 흐름들을 예시한다.
도 15 및 도 16 은 본원에서 교시된 바와 같이 통신을 지원하도록 구성된 장치들의 여러 샘플 양태들의 간략화된 블록도들이다.
본 개시물은 IoT 디바이스의 이미지로 사물 인터넷 (IoT) 디바이스를 식별하는 것에 관련된 것이다. 사용자 디바이스는 IoT 디바이스의 이미지를 캡쳐하고, 그 이미지를 사용자 디바이스로부터 IoT 디바이스로 송신하며, 여기서, IoT 디바이스의 이미지는 IoT 디바이스를 둘러싼 환경 중 적어도 일부분을 포함하며, IoT 디바이스는 이미지를, IoT 디바이스를 식별하는 정보와 연관시킨다. IoT 디바이스는 사용자 디바이스로부터 IoT 디바이스의 이미지를 수신하고, IoT 디바이스의 이미지를 저장하고, 그리고 IoT 디바이스의 이미지를 IoT 디바이스를 식별하는 정보와 연관시킨다.
물리적인 IoT 디바이스를 식별하는 예시적인 실시형태들에 관련된 구체적인 예들을 나타내기 위해, 이들 및 다른 양태들이 다음 설명 및 관련된 도면들에 개시된다. 대안적인 실시형태들은 본 개시물을 읽는 당업자들에게 자명할 것이며, 본 개시물의 범위 또는 정신으로부터 일탈함이 없이 구성되고 실시될 수도 있다. 게다가, 널리 공지된 엘리먼트들은 자세하게 설명되지 않거나, 또는 본원에서 개시된 양태들 및 실시형태들의 관련된 세부 사항들을 흐리지 않도록 하기 위해서 생략될 수도 있다.
단어 "예시적인" 은 "일 예, 사례, 또는 예시로서 기능하는 것" 을 의미하도록 본원에서 사용된다. 본원에서 "예시적인" 으로 설명하는 임의의 실시형태는 다른 실시형태들에 보다 바람직하거나 또는 유리한 것으로 반드시 해석되지는 않는다. 이와 유사하게, 용어 "실시형태들" 은 모든 실시형태들이 설명하는 동작의 특성, 이점 또는 모드를 포함하도록 요구하지 않는다.
본원에서 사용되는 전문용어는 특정의 실시형태들만을 단지 설명하며 본원에서 개시된 임의의 실시형태들을 한정하는 것으로 해석되어서는 안된다. 본원에서 사용될 때, 단수형들 "한 (a)", "하나 (an)", 및 "그 (the)" 는 문맥에서 달리 분명히 표시하지 않는 한, 복수형들도 또한 포함하도록 의도된다. 또한, 용어들 "구비한다 (comprises)", "구비하는 (comprising)", "포함한다 (includes)", 및/또는 "포함하는 (including)" 은, 본원에서 사용될 때, 언급된 특징들, 정수들 (integers), 단계들, 동작들, 엘리먼트들, 및/또는 구성요소들의 존재를 규정하지만, 하나 이상의 다른 특징들, 정수들, 단계들, 동작들, 엘리먼트들, 구성요소들, 및/또는 그들의 그룹들의 존재 또는 추가를 배제하지 않는 것으로 이해될 것이다.
또, 많은 양태들이 예를 들어, 컴퓨팅 디바이스의 엘리먼트들에 의해 수행될 액션들의 시퀀스들의 관점에서 설명된다. 본원에서 설명하는 여러 액션들은 특정의 회로들 (예컨대, 주문형 집적회로 (ASIC)) 에 의해, 하나 이상의 프로세서들에 의해 실행되는 프로그램 명령들에 의해, 또는 양자의 조합에 의해 수행될 수 있는 것으로 인식될 것이다. 게다가, 본원에서 설명하는 액션들의 이들 시퀀스는 실행 시, 연관된 프로세서로 하여금 본원에서 설명하는 기능을 수행할 수 있도록 하는 대응하는 컴퓨터 명령들의 세트를 안에 저장하고 있는 임의 유형의 컴퓨터 판독가능 저장 매체 내에 전체적으로 구현되는 것으로 간주될 수 있다. 따라서, 본 개시물의 여러 양태들은 청구된 요지의 범위 내에 있는 것으로 모두 간주되는 다수의 상이한 유형들로 구현될 수도 있다. 게다가, 본원에서 설명하는 양태들의 각각에 대해, 임의의 이러한 양태들의 대응하는 유형은 예를 들어, 설명되는 액션을 수행하도록 "구성된 로직" 으로 본원에서 설명될 수도 있다.
본원에서 사용될 때, 용어 "사물 인터넷 디바이스" (또는, "IoT 디바이스") 는 어드레스가능한 인터페이스 (예컨대, 인터넷 프로토콜 (IP) 어드레스, Bluetooth 식별자 (ID), 근접 장 통신 (NFC) ID, 등) 를 가지고 정보를 하나 이상의 다른 디바이스들로 유선 또는 무선 접속을 통해서 송신할 수 있는 임의의 오브젝트 (예컨대, 기기, 센서, 등) 를 지칭하기 위해 사용된다. IoT 디바이스는 신속 응답 (QR) 코드, 무선-주파수 식별 (RFID) 태그, NFC 태그, 또는 기타 등등과 같은, 수동 통신 인터페이스, 또는 모뎀, 송수신기, 송신기-수신기, 또는 기타 등등과 같은, 능동 통신 인터페이스를 가질 수도 있다. IoT 디바이스는 중앙 처리 유닛 (CPU), 마이크로프로세서, ASIC, 또는 기타 등등에 내장되거나 및/또는 그에 의해 제어/모니터링되고 로컬 애드-혹 네트워크 또는 인터넷과 같은 IoT 네트워크에의 접속을 위해 구성될 수 있는 특정의 속성들 (예컨대, IoT 디바이스가 온 또는 오프인지, 개방 또는 폐쇄인지, 휴지 또는 활성인지, 태스크 실행에 이용가능한지 또는 사용중인지 여부, 및 기타 등등과 같은, 디바이스 상태 또는 상태, 냉각 또는 가열 기능, 환경의 모니터링 또는 리코딩 기능, 광-방출 기능, 사운드-방출 기능, 등) 의 세트를 가질 수 있다. 예를 들어, IoT 디바이스들은, 그 디바이스들이 IoT 네트워크와 통신하는 어드레스가능한 통신 인터페이스와 함께 탑재되는 한, 냉장고들, 토스터들, 오븐들, 전자레인지들, 냉동기들, 식기세척기들, 그릇들, 손 도구들, 세탁기들, 의류 건조기들, 난로들, 에어컨들, 온도조절기들, 텔레비전들, 조명 기구들, 진공 청소기들, 스프링클러들, 전기 계량기들, 가스 계량기들, 등을 포함할 수도 있지만, 이에 한정되지 않는다. IoT 디바이스들은 또한 셀 폰들, 데스크탑 컴퓨터들, 랩탑 컴퓨터들, 태블릿 컴퓨터들, 개인 휴대정보 단말기들 (PDA들), 등을 포함할 수도 있다. 따라서, IoT 네트워크는 인터넷-연결성 (예컨대, 식기세척기들, 등) 을 일반적으로 가지지 않는 디바이스들에 더해서, "레거시" 인터넷-액세스가능한 디바이스들 (예컨대, 랩탑 또는 데스크탑 컴퓨터들, 셀 폰들, 등) 의 조합으로 이루어질 수도 있다.
도 1a 는 본 개시물의 양태에 따른 무선 통신 시스템 (100A) 의 하이-레벨 시스템 아키텍처를 예시한다. 무선 통신 시스템 (100A) 은 텔레비전 (110), 실외 에어컨 유닛 (112), 온도조절기 (114), 냉장고 (116), 및 세탁 및 건조기 (118) 를 포함하는, 복수의 IoT 디바이스들을 포함한다.
도 1a 를 참조하면, IoT 디바이스들 (110-118) 은 액세스 네트워크 (예컨대, 액세스 지점 (125)) 와, 도 1a 에 공중 인터페이스 (108) 및 직접 유선 접속 (109) 으로 나타낸, 물리적인 통신 인터페이스 또는 계층을 통해서, 통신하도록 구성된다. 공중 인터페이스 (108) 는 IEEE 802.11 와 같은, 무선 인터넷 프로토콜 (IP) 에 따를 수 있다. 도 1a 는 공중 인터페이스 (108) 를 통해서 통신하는 IoT 디바이스들 (110-118) 및 직접 유선 접속 (109) 을 통해서 통신하는 IoT 디바이스 (118) 를 예시하지만, 각각의 IoT 디바이스는 유선 또는 무선 접속, 또는 양쪽을 통해서 통신할 수도 있다.
인터넷 (175) 은 다수의 라우팅 에이전트들 및 프로세싱 에이전트들 (편의상 도 1a 에 미도시) 을 포함한다. 인터넷 (175) 은 이질적인 디바이스들/네트워크들 사이에 통신하기 위해 표준 인터넷 프로토콜 슈트 (예컨대, 송신 제어 프로토콜 (TCP) 및 IP) 를 이용하는 상호접속된 컴퓨터들 및 컴퓨터 네트워크들의 글로벌 시스템이다. TCP/IP 는 어떻게 데이터가 포맷되고, 어드레스되고, 송신되고, 라우트되고 목적지에서 수신되어야 하는지를 규정하는 단-대-단 연결을 제공한다.
도 1a 에서, 데스크탑 또는 개인용 컴퓨터 (PC) 와 같은, 컴퓨터 (120) 는 인터넷 (175) 에 직접 (예컨대, 이더넷 접속 또는 Wi-Fi 또는 802.11-기반의 네트워크를 통해서) 접속하는 것처럼 도시된다. 컴퓨터 (120) 는 일 예에서, (예컨대, 유선 및 무선 연결 양쪽을 가진 Wi-Fi 라우터에 대한) 액세스 지점 (125) 자체에 대응할 수 있는, 모뎀 또는 라우터에의 직접 접속과 같은, 인터넷 (175) 에의 유선 접속을 할 수도 있다. 대안적으로, 액세스 지점 (125) 및 인터넷 (175) 에 유선 접속을 통해서 접속되기 보다는, 컴퓨터 (120) 는 액세스 지점 (125) 에 공중 인터페이스 (108) 또는 또 다른 무선 인터페이스를 통해서 접속될 수도 있으며, 인터넷 (175) 에 공중 인터페이스 (108) 를 통해서 액세스할 수도 있다. 데스크탑 컴퓨터로서 예시되지만, 컴퓨터 (120) 는 랩탑 컴퓨터, 태블릿 컴퓨터, PDA, 스마트 폰, 또는 기타 등등일 수도 있다. 컴퓨터 (120) 는 IoT 디바이스이거나 및/또는 IoT 디바이스들 (110-118) 의 네트워크/그룹과 같은, IoT 네트워크/그룹을 관리하는 기능을 포함할 수도 있다.
액세스 지점 (125) 은 인터넷 (175) 에, 예를 들어, FiOS, 케이블 모뎀, 디지털 가입자 회선 (DSL) 모뎀, 또는 기타 등등과 같은, 광학 통신 시스템을 통해서, 접속될 수도 있다. 액세스 지점 (125) 은 IoT 디바이스들 (110-120) 및 인터넷 (175) 과 표준 인터넷 프로토콜들 (예컨대, TCP/IP) 을 이용하여 통신할 수도 있다.
도 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) 중 하나 이상은 서로 또는 다른 Bluetooth 또는 NFC-이용가능 디바이스들과 직접 통신하는 Bluetooth 또는 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) 은 대안적으로 IoT 관리기 (130) 또는 IoT 관리기 디바이스 (130) 로서 지칭될 수도 있는 감독자 디바이스 (130) 를 포함할 수도 있다. 이와 같이, 다음 설명이 용어 "감독자 디바이스" (130) 를 이용하는 경우에는, 당업자들은, IoT 관리기, 그룹 소유자, 또는 유사한 전문용어에 대한 임의의 참조들이 감독자 디바이스 (130) 또는 동일한 또는 실질적으로 유사한 기능을 제공하는 또 다른 물리적인 또는 논리적 구성요소를 지칭할 수도 있음을 명백히 알 수 있을 것이다.
일 실시형태에서, 감독자 디바이스 (130) 는 일반적으로 무선 통신 시스템 (100B) 에서 여러 다른 구성요소들을 관측하거나, 모니터링하거나, 제어하거나, 또는 아니면 관리할 수도 있다. 예를 들어, 감독자 디바이스 (130) 는 무선 통신 시스템 (100B) 에서 여러 IoT 디바이스들 (110-120) 과 연관되는 속성들, 활동들, 또는 다른 상태들을 모니터링하거나 또는 관리하기 위해 액세스 네트워크 (예컨대, 액세스 지점 (125)) 와 공중 인터페이스 (108) 및/또는 직접 유선 접속 (109) 을 통해서 통신할 수 있다. 감독자 디바이스 (130) 는 인터넷 (175) 에, 옵션적으로 IoT 서버 (170) (점선으로 도시됨) 에의 유선 또는 무선 접속을 가질 수도 있다. 감독자 디바이스 (130) 는 여러 IoT 디바이스들 (110-120) 과 연관되는 속성들, 활동들, 또는 다른 상태들을 추가로 모니터링하거나 또는 관리하는데 사용될 수 있는 IoT 서버 (170) 및/또는 인터넷 (175) 으로부터 정보를 획득할 수도 있다. 감독자 디바이스 (130) 는 독립형 디바이스 또는 IoT 디바이스들 (110-120) 중 하나, 예컨대 컴퓨터 (120) 일 수도 있다. 감독자 디바이스 (130) 는 물리 디바이스 또는 그 물리 디바이스 상에서 실행하는 소프트웨어 애플리케이션일 수도 있다. 감독자 디바이스 (130) 는 IoT 디바이스들 (110-120) 과 연관되는 모니터링된 속성들, 활동들, 또는 다른 상태들에 관련된 정보를 출력하고 입력 정보를 수신하여, 그와 연관되는 속성들, 활동들, 또는 다른 상태들을 제어하거나 또는 아니면 관리할 수 있는 사용자 인터페이스를 포함할 수도 있다. 따라서, 감독자 디바이스 (130) 는 일반적으로 여러 구성요소들을 포함할 수도 있으며, 무선 통신 시스템 (100B) 에서의 여러 구성요소들을 관측하거나, 모니터링하거나, 제어하거나 또는 아니면 관리하도록 여러 유선 및 무선 통신 인터페이스들을 지원할 수도 있다.
도 1b 에 나타낸 무선 통신 시스템 (100B) 은 (능동 IoT 디바이스들 (110-120) 과는 대조적으로) 무선 통신 시스템 (100B) 의 일부에 커플링되거나 또는 아니면 무선 통신 시스템 (100B) 의 일부를 이룰 수 있는 하나 이상의 수동 IoT 디바이스들 (105) 을 포함할 수도 있다. 일반적으로, 수동 IoT 디바이스들 (105) 은 바코드 부착 디바이스들, Bluetooth 디바이스들, 무선 주파수 (RF) 디바이스들, RFID 태그 디바이스들, 적외선 (IR) 디바이스들, NFC 태그 디바이스들, 또는 단거리 인터페이스를 통해서 쿼리받을 때 그의 식별자 및 속성들을 또 다른 디바이스에 제공할 수 있는 임의의 다른 적합한 디바이스를 포함할 수도 있다. 능동 IoT 디바이스들은 수동 IoT 디바이스들의 속성들에서의 변화들을 검출하거나, 저장하거나, 통신하거나, 조치를 취하거나, 및/또는 기타 등등을 행할 수도 있다.
예를 들어, 수동 IoT 디바이스들 (105) 은 RFID 태그 또는 바코드를 각각 갖는 커피 컵 및 오랜지 주스의 용기를 포함할 수도 있다. 캐비닛 IoT 디바이스 및 냉장고 IoT 디바이스 (116) 는 RFID 태그 또는 바코드를 판독하여 커피 컵 및/또는 오랜지 주스의 용기 수동 IoT 디바이스들 (105) 이 추가되거나 또는 제거되었을 때를 검출할 수 있는 적합한 스캐너 또는 리더를 각각 가질 수도 있다. 캐비닛 IoT 디바이스가 커피 컵 수동 IoT 디바이스 (105) 의 제거를 검출하는 것 및 냉장고 IoT 디바이스 (116) 가 오랜지 주스 수동 IoT 디바이스의 용기의 제거를 검출하는 것에 응답하여, 감독자 디바이스 (130) 는 캐비닛 IoT 디바이스 및 냉장고 IoT 디바이스 (116) 에서 검출된 활동들에 관련되는 하나 이상의 신호들을 수신할 수도 있다. 감독자 디바이스 (130) 는 그 후 사용자가 커피 컵으로부터 오랜지 주스를 마시고 있거나 및/또는 커피 컵으로부터 오랜지 주스를 마시기를 원한다고 추론할 수도 있다.
상기는 일부 유형의 RFID 태그 또는 바코드 통신 인터페이스를 갖는 것으로 수동 IoT 디바이스들 (105) 을 기술하지만, 수동 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) 과 관련하여 위에서 이미 제공된 범위까지, 본원에서 생략될 수도 있다.
도 1c 에 나타낸 통신 시스템 (100C) 은 IoT 디바이스들 (110-118) 과 감독자 디바이스 (130) 사이의 예시적인 피어-투-피어 통신들을 예시한다. 도 1c 에 나타낸 바와 같이, 감독자 디바이스 (130) 는 IoT 디바이스들 (110-118) 의 각각과 IoT 감독자 인터페이스를 통해서 통신한다. 또, IoT 디바이스들 (110 및 114), IoT 디바이스들 (112, 114, 및 116), 및 IoT 디바이스들 (116 및 118) 은 서로 직접 통신한다.
IoT 디바이스들 (110-118) 은 IoT 그룹 (160) 을 이룬다. IoT 디바이스 그룹 (160) 은 사용자의 홈 네트워크에 접속된 IoT 디바이스들과 같은, 로컬로 접속된 IoT 디바이스들의 그룹이다. 도시되지는 않았지만, 다수의 IoT 디바이스 그룹들은 인터넷 (175) 에 접속된 IoT 슈퍼에이전트 (SuperAgent) (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) 를 피어 (peer) 로서 취급하고 속성/스키마 업데이트들을 감독자 디바이스 (130) 로 송신할 수도 있다. IoT 디바이스가 또 다른 IoT 디바이스와 통신하도록 요구할 때, IoT 디바이스는 감독자 디바이스 (130) 로부터의 그 IoT 디바이스에 대한 포인터를 요청하고 그 후 피어로서 목표 IoT 디바이스와 통신할 수 있다. IoT 디바이스들 (110-118) 은 피어-투-피어 통신 네트워크를 통해서 공통 메시징 프로토콜 (CMP) 을 이용하여 서로 통신한다. 2개의 IoT 디바이스들이 CMP-이용가능하고 공통 통신 전송을 통해서 접속되는 한, 그들은 서로 통신할 수 있다. 프로토콜 스택에서, CMP 계층 (154) 은 애플리케이션 계층 (152) 아래에, 그리고 전송 계층 (156) 및 물리 계층 (158) 위에 있다.
본 개시물의 또 다른 양태에 따르면, 도 1d 는 복수의 IoT 디바이스들을 포함하는 또 다른 무선 통신 시스템 (100D) 의 하이-레벨 아키텍처를 예시한다. 일반적으로, 도 1d 에 나타낸 무선 통신 시스템 (100D) 은 위에서 더 자세히 설명된, 도 1a 내지 도 1c 에 각각 나타낸 무선 통신 시스템들 (100A-C) 와 동일하거나 및/또는 실질적으로 유사한 여러 구성요소들을 포함할 수도 있다. 이와 같이, 설명의 간결성 및 용이성을 위해, 도 1d 에 나타낸 무선 통신 시스템 (100D) 에서의 어떤 구성요소들에 관련된 여러 세부 사항들은 동일한 또는 유사한 세부 사항들이 도 1a 내지 도 1c 에 각각 예시된 무선 통신 시스템들 (100A-C) 과 관련하여 이미 제공된 범위까지, 본원에서 생략될 수도 있다.
인터넷 (175) 은 IoT 의 컨셉을 이용하여 조정될 수 있는 "리소스" 이다. 그러나, 인터넷 (175) 은 단지 조정되는 리소스의 일 예이며, 임의의 리소스가 IoT 의 컨셉을 이용하여 조정될 수 있다. 조정될 수 있는 다른 리소스들은 전기, 가스, 스토리지, 보안 등을 포함하지만, 이에 한정되지 않는다. IoT 디바이스는 리소스에 접속되어 그를 조정할 수도 있거나, 또는 리소스는 인터넷 (175) 을 통해서 조정될 수 있다. 도 1d 는 천연 가스, 가솔린, 온수, 및 전기와 같은, 여러 리소스들 (180) 을 예시하며, 여기서, 리소스들 (180) 은 인터넷 (175) 에 더해서 및/또는 그를 통해서 조정될 수 있다.
IoT 디바이스들은 그들 리소스 (180) 의 사용을 조정하기 위해 서로 통신할 수도 있다. 예를 들어, 토스터, 컴퓨터, 및 헤어드라이어와 같은, IoT 디바이스들은 그들의 전기 (리소스 (180)) 의 사용을 조정하기 위해 Bluetooth 통신 인터페이스를 통해서 서로 통신할 수도 있다. 또 다른 예로서, 데스크탑 컴퓨터, 전화기, 및 태블릿 컴퓨터와 같은, IoT 디바이스들은 인터넷 (175) (리소스 (180)) 에의 그들의 액세스를 조정하기 위해 Wi-Fi 통신 인터페이스를 통해서 통신할 수도 있다. 또한, 또 다른 예로서, 스토브, 의류 건조기, 및 온수기와 같은, IoT 디바이스들은 그들의 가스의 사용을 조정하기 위해 Wi-Fi 통신 인터페이스를 통해서 통신할 수도 있다. 대안적으로, 또는 추가적으로, 각각의 IoT 디바이스는 IoT 디바이스들로부터 수신된 정보에 기초하여 그들의 리소스 (180) 의 사용을 조정하는 로직을 갖는, IoT 서버 (170) 와 같은, IoT 서버에 접속될 수도 있다.
본 개시물의 또 다른 양태에 따르면, 도 1e 는 복수의 IoT 디바이스들을 포함하는 또 다른 무선 통신 시스템 (100E) 의 하이-레벨 아키텍처를 예시한다. 일반적으로, 도 1e 에 나타낸 무선 통신 시스템 (100E) 은 위에서 더 자세히 설명된, 도 1a 내지 도 1d 에 각각 나타낸 무선 통신 시스템들 (100A-D) 과 동일하거나 및/또는 실질적으로 유사한 여러 구성요소들을 포함할 수도 있다. 이와 같이, 설명의 간결성 및 용이성을 위해, 도 1e 에 나타낸 무선 통신 시스템 (100E) 에서의 어떤 구성요소들에 관련된 여러 세부 사항들은 동일한 또는 유사한 세부 사항들이 도 1a 내지 도 1d 에 각각 예시된 무선 통신 시스템들 (100A-D) 과 관련하여 위에서 이미 제공된 범위까지, 본원에서 생략될 수도 있다.
통신 시스템 (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) 은 IoT 디바이스 그룹 (160A) 와 IoT 디바이스 그룹 (160B) 사이의 통신을 촉진시키기 위해, 인터넷 (175) 에 접속하여 인터넷 (175) 을 통해서 서로 통신하거나 및/또는 서로 직접 통신할 수도 있다. 더욱이, 도 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) 는 Wi-Fi 안테나들, 셀룰러 안테나들, 위성 위치 시스템 (SPS; satellite position system) 안테나들 (예컨대, 전지구 측위 시스템 (GPS) 안테나들) 등을 포함하지만 이에 한정되지 않는, 외부 케이싱에 내장되는 하나 이상의 통합된 안테나들 및/또는 하나 이상의 외부 안테나들을 포함할 수도 있다.
IoT 디바이스 (200A) 와 같은, IoT 디바이스들의 내부 구성요소들은 상이한 하드웨어 구성들로 구현될 수 있지만, 내부 하드웨어 구성요소들에 대한 기본적인 하이-레벨 구성은 도 2a 에 플랫폼 (202) 으로서 도시된다. 플랫폼 (202) 은 도 1a 내지 도 1b 에서의 공중 인터페이스 (108) 및/또는 유선 인터페이스와 같은, 네트워크 인터페이스를 통해서 송신되는 소프트웨어 애플리케이션들, 데이터 및/또는 지령들을 수신하여 실행할 수 있다. 플랫폼 (202) 은 또한 로컬로 저장된 애플리케이션들을 독립적으로 실행할 수 있다. 플랫폼 (202) 은 마이크로제어기, 마이크로프로세서, 주문형 집적회로, 디지털 신호 프로세서 (DSP), 프로그래밍가능 로직 회로, 또는 다른 데이터 프로세싱 디바이스와 같은, 프로세서 (208) 로서 일반적으로 지칭되는, 하나 이상의 프로세서들 (208) 에 동작가능하게 커플링되며 유선 및/또는 무선 통신용으로 구성된 하나 이상의 송수신기들 (206) (예컨대, Wi-Fi 송수신기, Bluetooth 송수신기, 셀룰러 송수신기, 위성 송수신기, GPS 또는 SPS 수신기, 등) 을 포함할 수 있다. 프로세서 (208) 는 IoT 디바이스의 메모리 (212) 내 애플리케이션 프로그래밍 명령들을 실행할 수 있다. 메모리 (212) 는 컴퓨터 플랫폼들에 공통되는, 판독 전용 메모리 (ROM), 랜덤-액세스 메모리 (RAM), 전기적 소거가능 프로그래밍가능 ROM (EEPROM), 플래시 카드들, 또는 임의의 메모리 중 하나 이상을 포함할 수 있다. 하나 이상의 입력 / 출력 (I/O) 인터페이스들 (214) 은 프로세서 (208) 로 하여금, 예시된 바와 같은 디스플레이 (226), 전원 버튼 (222), 제어 버튼들 (224A 및 224B) 과 같은 여러 I/O 디바이스들, 및 IoT 디바이스 (200A) 와 연관되는, 센서들, 엑츄에이터들, 릴레이들, 밸브들, 스위치들, 및 기타 등등과 같은, 임의의 다른 디바이스들과 통신하고 그들로부터 제어가능하도록 구성될 수 있다. 플랫폼 (202) 은 또한 옵션적으로 IoT 디바이스 (200A) 에 통합된 카메라 디바이스 및/또는 사용자로 하여금, 카메라 디바이스를 동작시키도록 구성된 카메라 애플리케이션일 수도 있는, 카메라 (210) 를 포함할 수도 있다.
따라서, 본 개시물의 양태는 본원에서 설명한 기능들을 수행하는 능력을 포함하는 IoT 디바이스 (예컨대, IoT 디바이스 (200A)) 를 포함할 수 있다. 당업자들이 명백히 주지하고 있는 바와 같이, 여러 로직 엘리먼트들은 본원에서 개시되는 기능을 달성하기 위해 별개의 엘리먼트들로, 프로세서 (예컨대, 프로세서 (208)) 상에서 실행되는 소프트웨어 모듈들로, 또는 소프트웨어와 하드웨어의 임의의 조합으로 구현될 수 있다. 예를 들어, 송수신기 (206), 프로세서 (208), 메모리 (212), 및 I/O 인터페이스 (214) 는 본원에서 개시되는 여러 기능들을 로드하고, 저장하고 그리고 실행하기 위해 협력적으로 모두 사용될 수도 있으며, 따라서 이들 기능들을 수행하는 로직은 여러 엘리먼트들에 걸쳐서 분산될 수도 있다. 대안적으로, 그 기능은 하나의 별개의 구성요소로 통합될 수 있다. 따라서, 도 2a 에서 IoT 디바이스 (200A) 의 특징들은 단지 예시적인 것으로 간주되어야 하며 본 개시물은 예시된 특징들 또는 배열에 한정되지 않는다.
예를 들어, IoT 디바이스 (200A) 가 본원에서 설명된 바와 같이 IoT 디바이스의 이미지로 IoT 디바이스를 식별하도록 구성되는 경우, 카메라 (210) (존재하는 경우) 는 IoT 디바이스의 이미지를 캡쳐하도록 구성될 수도 있으며 송수신기 (206) 는 그 이미지를 IoT 디바이스 (200A) 로부터 다른 IoT 디바이스로 송신하도록 구성될 수도 있다. 대안적으로, IoT 디바이스 (200A) 에 카메라 (210) 가 탑재되지 않은 경우, 송수신기 (206) 는 카메라가 탑재된 다른 디바이스로부터 IoT 디바이스의 이미지를 수신하도록 구성될 수도 있다. 다른 예로서, IoT 디바이스 (200A) 가 IoT 디바이스의 이미지 (200A) 로 식별되도록 구성되는 경우, 송수신기 (206) 는 다른 사용자 디바이스로부터 IoT 디바이스 (200A) 의 이미지를 수신하도록 구성될 수도 있으며, 메모리 (212) 는 IoT 디바이스 (200A) 의 이미지를 저장하도록 구성될 수도 있으며, 프로세서 (208) 및/또는 메모리 (212) 는 IoT 디바이스 (200A) 의 이미지를 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) 는 수동 IoT 디바이스 (200B) 가 제어되는 IoT 네트워크 내에서 관측되거나, 모니터링되거나, 제어되거나, 관리되거나, 또는 아니면 알려질 수 있게 하는, I/O 인터페이스 (214) 또는 다른 적합한 메커니즘을 단지 포함할 수도 있다. 예를 들어, 일 실시형태에서, 수동 IoT 디바이스 (200B) 와 연관되는 I/O 인터페이스 (214) 는 단거리 인터페이스를 통해서 쿼리받을 때 수동 IoT 디바이스 (200B) 와 연관되는 식별자 및 속성들을 또 다른 디바이스 (예컨대, 수동 IoT 디바이스 (200B) 와 연관되는 속성들에 관련된 정보를 검출하거나, 저장하거나, 통신하거나, 처리를 행하거나, 또는 아니면 프로세싱할 수 있는, IoT 디바이스 (200A) 와 같은, 능동 IoT 디바이스) 에 제공할 수 있는, 바코드, Bluetooth 인터페이스, 무선 주파수 (RF) 인터페이스, RFID 태그, IR 인터페이스, NFC 인터페이스, 또는 임의의 다른 적합한 I/O 인터페이스를 포함할 수도 있다.
상기는 수동 IoT 디바이스 (200B) 를 일부 유형의 RF, 바코드, 또는 다른 I/O 인터페이스 (214) 를 갖는 것으로 설명하지만, 수동 IoT 디바이스 (200B) 는 이러한 I/O 인터페이스 (214) 를 갖지 않는 디바이스 또는 다른 물리적인 오브젝트를 포함할 수도 있다. 예를 들어, 어떤 IoT 디바이스들은 수동 IoT 디바이스 (200B) 를 식별하기 위해 수동 IoT 디바이스 (200B) 와 연관되는 형태들, 사이즈들, 칼라들, 및/또는 다른 관측가능한 특징들을 검출할 수 있는 적합한 스캐너 또는 리더 (reader) 메커니즘들을 가질 수도 있다. 이러한 방법으로, 임의의 적합한 물리적인 오브젝트는 그의 아이덴티티 및 속성들을 통신하고, 제어되는 IoT 네트워크 내에서 관측되거나, 모니터링되거나, 제어되거나, 또는 아니면 관리될 수도 있다.
일 양태에서, IoT 디바이스 (200B) 는 본원에서 설명하는 바와 같이, IoT 디바이스 (200B) 의 이미지로 식별되도록 구성될 수도 있다. 그 경우, 송수신기 (206) 는 IoT 디바이스 (200A) 와 같은 다른 사용자 디바이스로부터 IoT 디바이스 (200B) 의 이미지를 수신하도록 구성될 수도 있으며, 메모리 (미도시) 는 IoT 디바이스 (200B) 의 이미지를 저장하도록 구성될 수도 있으며, 프로세서 및/또는 메모리 (미도시) 는 IoT 디바이스 (200B) 의 이미지를 IoT 디바이스 (200B) 를 식별하는 정보와 연관시키도록 구성될 수도 있다.
도 3 은 기능을 수행하도록 구성된 로직을 포함하는 통신 디바이스 (300) 를 예시한다. 통신 디바이스 (300) 는 IoT 디바이스들 (110-120), IoT 디바이스 (200A), 인터넷 (175) 에 커플링된 임의의 구성요소들 (예컨대, IoT 서버 (170)) 등을 포함하지만 이에 한정되지 않는, 위에서 언급된 통신 디바이스들 중 임의의 통신 디바이스에 대응할 수 있다. 따라서, 통신 디바이스 (300) 는 도 1a 및 도 1b 의 무선 통신 시스템들 (100A-B) 을 통해서 하나 이상의 다른 엔티티들과 통신하도록 (또는, 그와의 통신을 촉진하도록) 구성되는 임의의 전자 디바이스에 대응할 수 있다.
도 3 을 참조하면, 통신 디바이스 (300) 는 정보를 수신하거나 및/또는 송신하도록 구성된 로직 (305) 을 포함한다. 일 예에서, 통신 디바이스 (300) 가 무선 통신 디바이스 (예컨대, IoT 디바이스 (200A) 및/또는 수동 IoT 디바이스 (200B)) 에 대응하면, 정보를 수신하거나 및/또는 송신하도록 구성된 로직 (305) 은 무선 송수신기와 같은 무선 통신 인터페이스 (예컨대, Bluetooth, Wi-Fi, Wi-Fi 다이렉트, LTE (Long-Term Evolution) 다이렉트, 등) 및 연관된 하드웨어 (예컨대, RF 안테나, 모뎀, 변조기 및/또는 복조기, 등) 을 포함할 수 있다. 또 다른 예에서, 정보를 수신하거나 및/또는 송신하도록 구성된 로직 (305) 은 유선 통신 인터페이스 (예컨대, 직렬 접속, USB 또는 Firewire 접속, 인터넷 (175) 이 액세스될 수 있는 이더넷 접속, 등) 에 대응할 수 있다. 따라서, 통신 디바이스 (300) 가 일부 유형의 네트워크-기반의 서버 (예컨대, 애플리케이션 (170)) 에 대응하면, 정보를 수신하거나 및/또는 송신하도록 구성된 로직 (305) 은 일 예에서, 네트워크-기반의 서버를 다른 통신 엔티티들에 이더넷 프로토콜을 통해서 접속하는 이더넷 카드에 대응할 수 있다. 추가적인 예에서, 정보를 수신하거나 및/또는 송신하도록 구성된 로직 (305) 은 통신 디바이스 (300) 가 그의 로컬 환경 (예컨대, 가속도계, 온도 센서, 광 센서, 로컬 RF 신호들을 모니터링하는 안테나 등) 을 모니터링할 수 있게 하는 감각 (sensory) 또는 측정 하드웨어를 포함할 수 있다. 정보를 수신하거나 및/또는 송신하도록 구성된 로직 (305) 은 또한 실행될 때, 정보를 수신하거나 및/또는 송신하도록 구성된 로직 (305) 의 연관된 하드웨어가 그의 수신 및/또는 송신 기능(들) 을 수행하도록 하는 소프트웨어를 포함할 수 있다. 그러나, 정보를 수신하거나 및/또는 송신하도록 구성된 로직 (305) 은 단지 소프트웨어에만 대응하지 않으며, 정보를 수신하거나 및/또는 송신하도록 구성된 로직 (305) 은 그의 기능을 달성하기 위해 하드웨어에 적어도 부분적으로 의존한다.
도 3 을 참조하면, 통신 디바이스 (300) 는 정보를 프로세싱하도록 구성된 로직 (310) 을 더 포함한다. 일 예에서, 정보를 프로세싱하도록 구성된 로직 (310) 은 적어도 프로세서를 포함할 수 있다. 정보를 프로세싱하도록 구성된 로직 (310) 에 의해 수행될 수 있는 프로세싱의 형태의 예시적인 구현예들은, 결정들을 수행하는 것, 접속들을 확립하는 것, 상이한 정보 옵션들 사이에 선택을 행하는 것, 데이터와 관련된 평가들을 수행하는 것, 측정 동작들을 수행하기 위해 통신 디바이스 (300) 에 커플링된 센서들과 상호작용하는 것, 정보를 하나의 포맷으로부터 또 다른 포맷으로 (예컨대, .wmv 로부터 .avi 로, 등과 같은 상이한 프로토콜들 사이에) 변환하는 것 등을 포함하지만 이에 한정되지 않는다. 예를 들어, 정보를 프로세싱하도록 구성된 로직 (310) 에 포함되는 프로세서는 범용 프로세서, DSP, ASIC, 필드 프로그래밍가능 게이트 어레이 (FPGA) 또는 다른 프로그래밍가능 로직 디바이스, 이산 게이트 또는 트랜지스터 로직, 이산 하드웨어 구성요소들, 또는 본원에서 설명한 기능들을 수행하도록 설계된 이들의 임의의 조합에 대응할 수 있다. 범용 프로세서는 마이크로프로세서일 수도 있으며, 그러나 대안적으로는, 프로세서는 임의의 종래의 프로세서, 제어기, 마이크로제어기 또는 상태 머신일 수도 있다. 프로세서는 또한 컴퓨팅 디바이스들의 조합 (예컨대, DSP 와 마이크로프로세서의 조합, 복수의 마이크로프로세서들, DSP 코어와 결합된 하나 이상의 마이크로프로세서들, 또는 임의의 다른 이러한 구성) 으로서 구현될 수도 있다. 정보를 프로세싱하도록 구성된 로직 (310) 은 또한 실행될 때, 정보를 프로세싱하도록 구성된 로직 (310) 의 연관된 하드웨어로 하여금 그의 프로세싱 기능(들)을 수행하도록 하는 소프트웨어를 포함할 수 있다. 그러나, 정보를 프로세싱하도록 구성된 로직 (310) 은 단지 소프트웨어에만 대응하지 않으며, 정보를 프로세싱하도록 구성된 로직 (310) 은 그의 기능을 달성하기 위해 하드웨어에 적어도 부분적으로 의존한다.
도 3 을 참조하면, 통신 디바이스 (300) 는 정보를 저장하도록 구성된 로직 (315) 을 더 포함한다. 일 예에서, 정보를 저장하도록 구성된 로직 (315) 은 적어도 비일시성 메모리 및 연관된 하드웨어 (예컨대, 메모리 제어기, 등) 를 포함할 수 있다. 예를 들어, 정보를 저장하도록 구성된 로직 (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 의 구성된 로직들의 기능을 촉진하기 위해 사용되는 임의의 소프트웨어는 305 내지 325 의 구성된 로직들이 각각이 정보를 저장하도록 구성된 로직 (315) 에 의해 저장되는 소프트웨어의 동작에 부분적으로 기초하여 그들의 기능 (즉, 이 경우, 소프트웨어 실행) 을 수행하도록, 정보를 저장하도록 구성된 로직 (315) 과 연관되는 비일시성 메모리에 저장될 수 있다. 이와 유사하게, 구성된 로직들 중 하나와 직접 연관되는 하드웨어는 다른 구성된 로직들에 의해 가끔 차용되거나 또는 사용될 수도 있다. 예를 들어, 정보를 프로세싱하도록 구성된 로직 (310) 의 프로세서는 정보를 수신하거나 및/또는 송신하도록 구성된 로직 (305) 이 정보를 프로세싱하도록 구성된 로직 (310) 과 연관되는 하드웨어 (즉, 프로세서) 의 동작에 부분적으로 기초하여 그의 기능 (즉, 이 경우, 데이터의 송신) 을 수행하도록, 정보를 수신하거나 및/또는 송신하도록 구성된 로직 (305) 에 의해 송신되기 전에 적합한 포맷으로 데이터를 포맷할 수 있다.
일반적으로, 명시적으로 달리 언급되지 않는 한, 본 개시물 전반에 걸쳐 사용될 때, 어구 "하도록 구성된 로직" 은 하드웨어로 적어도 부분적으로 구현되는 양태를 상기시키기 위해 의도되며, 하드웨어와 독립적인 소프트웨어-단독 구현예들에 맵핑하려는 의도는 아니다. 또한, 여러 블록들에서 구성된 로직 또는 "하도록 구성된 로직" 은 특정의 로직 게이트들 또는 엘리먼트들에 한정되지 않으며, 그러나 일반적으로 본원에서 설명하는 기능을 (하드웨어 또는 하드웨어와 소프트웨어의 조합을 통해서) 수행하는 능력을 지칭한다는 것을 명백히 알 수 있을 것이다. 따라서, 여러 블록들에 예시된 바와 같은 구성된 로직들 또는 "하도록 구성된 로직" 은 단어 "로직" 을 공유함에도 불구하고 로직 게이트들 또는 로직 엘리먼트들로서 반드시 구현될 필요는 없다. 여러 블록들에서 로직 사이의 다른 상호작용들 또는 협력은 아래서 좀더 자세히 설명되는 양태들의 검토로부터 당업자에게 자명하게 될 것이다.
여러 실시형태들은 도 4 에 예시된 서버 (400) 와 같은, 시중에서 입수가능한 다양한 서버 디바이스들 중 임의의 서버 디바이스 상에서 구현될 수도 있다. 일 예에서, 서버 (400) 는 위에서 설명된 IoT 서버 (170) 의 하나의 예시적인 구성에 대응할 수도 있다. 도 4 에서, 서버 (400) 는 휘발성 메모리 (402) 및 대용량 비휘발성 메모리, 예컨대 디스크 드라이브 (403) 에 커플링된 프로세서 (401) 를 포함한다. 서버 (400) 는 또한 프로세서 (401) 에 커플링된 플로피 디스크 드라이브, 컴팩트 디스크 (CD) 또는 DVD 디스크 드라이브 (406) 를 포함할 수도 있다. 서버 (400) 는 또한 다른 브로드캐스트 시스템 컴퓨터들 및 서버들에 커플링된 근거리 네트워크와 같은 네트워크 (407) 와 데이터 접속들을 확립하기 위해, 프로세서 (401) 에 또는 인터넷에 커플링된 네트워크 액세스 포트들 (404) 을 포함할 수도 있다. 도 3 의 상황에서, 도 4 의 서버 (400) 가 통신 디바이스 (300) 의 하나의 예시적인 구현예들을 예시하며, 이에 의해, 정보를 송신하거나 및/또는 수신하도록 구성된 로직 (305) 은 네트워크 (407) 와 통신하기 위해 서버 (400) 에 의해 사용되는 네트워크 액세스 지점들 (404) 에 대응하며, 정보를 프로세싱하는 구성된 로직 (310) 은 프로세서 (401) 에 대응하며, 정보를 저장하는 로직 (315) 구성은 휘발성 메모리 (402), 디스크 드라이브 (403) 및/또는 디스크 드라이브 (406) 의 임의의 조합에 대응한다는 것을 명백히 알 수 있을 것이다. 정보를 제시하도록 구성된 옵션적인 로직 (320) 및 로컬 사용자 입력을 수신하도록 구성된 옵션적인 로직 (325) 은 도 4 에 명시적으로 도시되지 않으며 그 안에 포함되거나 또는 포함되지 않을 수도 있다. 따라서, 도 4 는 도 2a 에서와 같은 IoT 디바이스 구현예에 더해서, 통신 디바이스 (300) 가 서버로서 구현될 수도 있음을 보여주는 것을 돕는다.
일반적으로, 전화기들, 태블릿 컴퓨터들, 랩탑 및 데스크탑 컴퓨터들, 어떤 운송체들, 등과 같은, 사용자 장비 (UE) 는 로컬로 (예컨대, Bluetooth, 로컬 Wi-Fi, 등으로) 또는 원격으로 (예컨대, 셀룰러 네트워크들, 인터넷, 등을 통해서) 서로 접속하도록 구성될 수 있다. 더욱이, 어떤 UE들은 또한 디바이스들로 하여금 일-대-일 접속을 행할 수 있게 하거나 또는 서로 직접 통신하기 위해서 여러 디바이스들을 포함하는 그룹에 동시에 접속가능하게 하는 어떤 무선 네트워킹 기술들 (예컨대, Wi-Fi, Bluetooth, Wi-Fi 다이렉트, 등) 을 이용하여 근접도-기반의 피어-투-피어 (P2P) 통신을 지원할 수도 있다. 그 목적을 위해, 도 5 는 발견가능한 P2P 서비스들을 지원할 수도 있는 예시적인 무선 통신 네트워크 또는 WAN (500) 을 예시한다. 예를 들어, 일 실시형태에서, 무선 통신 네트워크 (500) 는 여러 기지국들 (510) 및 다른 네트워크 엔티티들을 포함하는 LTE 네트워크 또는 또 다른 적합한 WAN 을 포함할 수도 있다. 간결성을 위해, 단지 3개의 기지국들 (510a, 510b 및 510c), 하나의 네트워크 제어기 (530), 및 하나의 동적 호스트 구성 프로토콜 (DHCP) 서버 (540) 가 도 5 에 도시된다. 기지국 (510) 은 디바이스들 (520) 과 통신하는 엔티티일 수도 있으며, 또한 노드 B, 진화된 노드 B (eNB), 액세스 지점, 등으로 지칭될 수도 있다. 각각의 기지국 (510) 은 특정의 지리적 영역에 대해 통신 커버리지를 제공할 수도 있으며, 커버리지 영역 내에 로케이트된 디바이스들 (520) 에 대해 통신을 지원할 수도 있다. 네트워크 용량을 향상시키기 위해, 기지국 (510) 의 전체 커버리지 영역은 다수의 (예컨대, 3개의) 더 작은 영역들로 파티셔닝될 수도 있으며, 여기서 각각의 더 작은 영역은 각각의 기지국 (510) 에 의해 서빙될 수도 있다. 3GPP 에서, 용어 "셀" 은 그 용어가 사용되는 상황에 따라서, 기지국 (510) 의 커버리지 영역 및/또는 이 커버리지 영역을 서빙하는 기지국 서브시스템 (510) 을 지칭할 수 있다. 3GPP2 에서, 용어 "섹터" 또는 "셀-섹터" 는 기지국 (510) 의 커버리지 영역 및/또는 이 커버리지 영역을 서빙하는 기지국 서브시스템 (510) 을 지칭할 수 있다. 명료성을 위해, "셀" 의 3GPP 컨셉이 본원의 설명에서 사용될 수도 있다.
기지국 (510) 은 매크로 셀, 피코 셀, 펨토 셀, 및/또는 다른 셀 유형들에 대해 통신 커버리지를 제공할 수도 있다. 매크로 셀은 상대적으로 큰 지리적 영역 (예컨대, 반경으로 수 킬로미터) 을 커버할 수도 있으며, 서비스 가입한 디바이스들 (520) 에 의한 비제한된 액세스를 허용할 수도 있다. 피코 셀은 상대적으로 작은 지리적 영역을 커버할 수도 있으며, 서비스 가입한 디바이스들 (520) 에 의한 비제한된 액세스를 허용할 수도 있다. 펨토 셀은 상대적으로 작은 지리적 영역 (예컨대, 홈) 을 커버할 수도 있으며, 펨토 셀과 연관하는 디바이스들 (520) (예컨대, 폐쇄 가입자 그룹 (CSG) 에서의 디바이스들 (520)) 에 의한 제한된 액세스를 허용할 수도 있다. 도 5 에 나타낸 예에서, 무선 네트워크 (500) 는 매크로 셀들을 위한 매크로 기지국들 (510a, 510b 및 510c) 을 포함한다. 무선 네트워크 (500) 는 또한 피코 셀들을 위한 피코 기지국들 (510) 및/또는 펨토 셀들 (도 5 에 미도시) 을 위한 홈 기지국들 (510) 을 포함할 수도 있다.
네트워크 제어기 (530) 는 기지국들 (510) 의 세트에 커플링될 수도 있으며, 이들 기지국들 (510) 에 대해 조정 및 제어를 제공할 수도 있다. 네트워크 제어기 (530) 는 백홀을 통해서 기지국들과 통신할 수 있는 단일 네트워크 엔티티 또는 네트워크 엔티티들의 컬렉션일 수도 있다. 기지국들은 또한 서로, 예컨대, 직접적으로 또는 간접적으로, 무선 또는 유선 백홀을 통해서 통신할 수도 있다. DHCP 서버 (540) 는 아래에서 설명되는 바와 같이, P2P 통신을 지원할 수도 있다. DHCP 서버 (540) 는 무선 네트워크 (500) 의 일부이거나, 무선 네트워크 (500) 의 외부에 있거나, 인터넷 접속 공유 (ICS) 를 통해서 실행되거나, 또는 임의의 적합한 이들의 조합일 수도 있다. DHCP 서버 (540) 는 (예컨대, 도 5 에 나타낸 바와 같이) 별개의 엔티티일 수도 있거나 또는 기지국 (510), 네트워크 제어기 (530), 또는 일부 다른 엔티티의 일부일 수도 있다. 어쨌든, DHCP 서버 (540) 는 피어-투-피어 통신하기를 원하는 디바이스들 (520) 에 의해 도달가능할 수도 있다.
디바이스들 (520) 은 무선 네트워크 (500) 전체에 걸쳐서 흩어져 있을 수도 있으며, 각각의 디바이스 (520) 는 정지하고 있거나 또는 이동하고 있을 수도 있다. 디바이스 (520) 는 또한 노드, 사용자 장비 (UE), 스테이션, 이동국, 터미널, 액세스 단말기, 가입자 유닛, 등으로서 지칭될 수도 있다. 디바이스 (520) 는 셀룰러폰, 개인 휴대정보 단말기 (PDA), 무선 모뎀, 무선 통신 디바이스, 핸드헬드 디바이스, 랩탑 컴퓨터, 코드리스 폰, 무선 가입자 회선 (WLL) 국, 스마트 폰, 넷북, 스마트북, 태블릿, 등일 수도 있다. 디바이스 (520) 는 무선 네트워크 (500) 에서의 기지국들 (510) 과 통신할 수도 있으며, 다른 디바이스들 (520) 과 추가로 피어-투-피어 통신할 수도 있다. 예를 들어, 도 5 에 나타낸 바와 같이, 디바이스들 (520a 및 520b) 은 피어-투-피어 통신할 수도 있으며, 디바이스들 (520c 및 520d) 은 피어-투-피어 통신할 수도 있으며, 디바이스들 (520e 및 520f) 은 피어-투-피어 통신할 수도 있으며, 디바이스들 (520g, 520h, 및 520i) 은 피어-투-피어 통신할 수도 있으며, 한편 나머지 디바이스들 (520) 은 기지국들 (510) 과 통신할 수도 있다. 도 5 에 추가로 나타낸 바와 같이, 디바이스들 (520a, 520d, 520f, 및 520h) 은 또한 예컨대, P2P 통신에 참가하지 않았을 때 또는 어쩌면 P2P 통신을 동반하여, 기지국들 (500) 과 통신할 수도 있다.
본원의 설명에서, WAN 통신은 예컨대, 또 다른 디바이스 (520) 와 같은 원격 엔티티와의 콜을 위해 무선 네트워크 (500) 에서 디바이스 (520) 과 기지국 (510) 사이의 통신을 지칭할 수도 있다. WAN 디바이스는 WAN 통신에 관련되거나 또는 참가되는 디바이스 (520) 이다. P2P 통신은 임의의 기지국 (510) 을 거치지 않는, 2개 이상의 디바이스들 (520) 사이의 직접 통신을 지칭한다. P2P 디바이스는 P2P 통신에 관련되거나 또는 참가되는 디바이스 (520), 예컨대, P2P 디바이스의 근접도 내에서 또 다른 디바이스 (520) 에 대한 트래픽 데이터를 가지는 디바이스 (520) 이다. 2개의 디바이스들은 예를 들어, 각각의 디바이스 (520) 가 다른 디바이스 (520) 를 검출할 수 있으면, 서로의 근접도 이내인 것으로 간주될 수도 있다. 일반적으로, 디바이스 (520) 는 또 다른 디바이스 (520) 와, P2P 통신에 대해서는 직접, 또는 WAN 통신에 대해서는 적어도 하나의 기지국 (510) 을 통해서 통신할 수도 있다.
일 실시형태에서, P2P 디바이스들 (520) 사이의 직접 통신은 P2P 그룹들로 조직될 수도 있다. 좀더 자세하게 설명하면, P2P 그룹은 일반적으로 P2P 통신에 관련되거나 또는 참가되는 2개 이상의 디바이스들 (520) 의 그룹을 지칭하며 P2P 링크는 P2P 그룹에 대한 통신 링크를 지칭한다. 더욱이, 일 실시형태에서, P2P 그룹은 하나의 디바이스 (520) 지정 P2P 그룹 소유자 (또는, P2P 서버) 및 P2P 그룹 소유자에 의해 서빙되는 하나 이상의 디바이스들 (520) 지정 P2P 클라이언트들을 포함할 수도 있다. P2P 그룹 소유자는 WAN 과 시그널링을 교환하는 것, P2P 그룹 소유자와 P2P 클라이언트들 사이의 데이터 송신을 조정하는 것, 등과 같은 어떤 관리 기능들을 수행할 수도 있다. 예를 들어, 도 5 에 나타낸 바와 같이, 제 1 P2P 그룹은 기지국 (510a) 의 커버리지 하에서 디바이스들 (520a 및 520b) 을 포함하며, 제 2 P2P 그룹은 기지국 (510b) 의 커버리지 하에서 디바이스들 (520c 및 520d) 을 포함하며, 제 3 P2P 그룹은 상이한 기지국들 (510b 및 510c) 의 커버리지 하에서 디바이스들 (520e 및 520f) 을 포함하며, 제 4 P2P 그룹은 기지국 (510c) 의 커버리지 하에서 디바이스들 (520g, 520h 및 520i) 을 포함한다. 디바이스들 (520a, 520d, 520f, 및 520h) 은 그들의 각각의 P2P 그룹들에 대한 P2P 그룹 소유자들일 수도 있으며, 디바이스들 (520b, 520c, 520e, 520g, 및 520i) 은 그들의 각각의 P2P 그룹들에서 P2P 클라이언트들일 수도 있다. 도 5 에서 다른 디바이스들 (520) 은 WAN 통신에 참가될 수도 있다.
일 실시형태에서, P2P 통신은 단지 P2P 그룹 내에서 발생할 수도 있으며, P2P 그룹 소유자와 그와 연관되는 P2P 클라이언트들 사이에서 단지 추가로 발생할 수도 있다. 예를 들어, 동일한 P2P 그룹 내 2개의 P2P 클라이언트들 (예컨대, 디바이스들 520g 및 520i) 이 정보를 교환하기를 원하면, P2P 클라이언트들 중 하나는 그 정보를 P2P 그룹 소유자 (예컨대, 디바이스 (520h)) 로 전송할 수도 있으며, P2P 그룹 소유자는 그 후 송신들을 다른 P2P 클라이언트로 중계할 수도 있다. 일 실시형태에서, 특정의 디바이스 (520) 는 다수의 P2P 그룹들에 속할 수도 있으며, 각각의 P2P 그룹에서 P2P 그룹 소유자 또는 P2P 클라이언트로서 거동할 수도 있다. 더욱이, 일 실시형태에서, 특정의 P2P 클라이언트는 오직 하나의 P2P 그룹에 속하거나 또는 다수의 P2P 그룹에 속할 수도 있으며, 다수의 P2P 그룹들 중 임의의 그룹에서 P2P 디바이스들 (520) 과 임의의 특정의 순간에 통신할 수도 있다. 일반적으로, 통신은 다운링크 및 업링크 상에서의 송신들을 통해서 촉진될 수도 있다. WAN 통신에 있어, 다운링크 (또는, 순방향 링크) 는 기지국들 (510) 로부터 디바이스들 (520) 로의 통신 링크를 지칭하며, 업링크 (또는, 역방향 링크) 는 디바이스들 (520) 로부터 기지국들 (510) 로의 통신 링크를 지칭한다. P2P 통신에 있어, P2P 다운링크는 P2P 그룹 소유자들로부터 P2P 클라이언트들로의 통신 링크를 지칭하며, P2P 업링크는 P2P 클라이언트들로부터 P2P 그룹 소유자들로의 통신 링크를 지칭한다. 어떤 실시형태들에서, P2P 를 통신하는데 WAN 기술들을 이용하기 보다는, 2개 이상의 디바이스들은 더 작은 P2P 그룹들을 형성하고, Wi-Fi, Bluetooth, 또는 Wi-Fi 다이렉트와 같은 기술들을 이용하여 무선 로컬 영역 네트워크 (WLAN) 상에서 P2P 통신할 수도 있다. 예를 들어, Wi-Fi, Bluetooth, Wi-Fi 다이렉트, 또는 다른 WLAN 기술들을 이용한 P2P 통신은 2개 이상의 모바일 폰들, 게임 콘솔들, 랩탑 컴퓨터들, 또는 다른 적합한 통신 엔티티들 사이에 P2P 통신을 가능하게 할 수도 있다.
본 개시물의 일 양태에 따르면, 도 6 은 여러 디바이스들 (610, 630, 640) 이 통신할 수도 있는 근접도-기반의 분산된 버스를 확립하는데 발견가능한 P2P 서비스들이 사용될 수도 있는 예시적인 환경 (600) 을 예시한다. 예를 들어, 일 실시형태에서, 단일 플랫폼 상에서 애플리케이션들 및 기타 등등 사이의 통신들은, 애플리케이션들이 서비스들을 다른 애플리케이션들에 제공하기 위해 분산된 버스 (625) 에 등록하며 다른 애플리케이션들이 등록된 애플리케이션들에 관한 정보에 대해 분산된 버스 (625) 에 쿼리하는 네트워크화된 컴퓨팅 환경에서 애플리케이션-대-애플리케이션 통신들을 가능하게 하는데 사용되는 소프트웨어 버스를 포함할 수도 있는 분산된 버스 (625) 를 통해 프로세스간 통신 프로토콜 (IPC) 프레임워크를 이용하여 촉진될 수도 있다. 이러한 프로토콜은 신호 메시지들 (예컨대, 통지들) 이 점-대-점 또는 브로드캐스트일 수도 있고 메소드 콜 메시지들 (method call messages) (예컨대, RPC들) 이 동기적 또는 비동기적일 수도 있고 그리고 분산된 버스 (625) (예컨대, "데몬" 버스 프로세스) 가 여러 디바이스들 (610, 630, 640) 사이의 메시지 라우팅을 처리할 수도 있는, 비동기적 통지들 및 원격 프로시저 콜들 (RPC들) 을 제공할 수도 있다.
일 실시형태에서, 분산된 버스 (625) 는 다양한 전송 프로토콜들 (예컨대, Bluetooth, TCP/IP, Wi-Fi, CDMA, GPRS, UMTS, 등) 에 의해 지원될 수도 있다. 예를 들어, 일 양태에 따르면, 제 1 디바이스 (610) 는 분산된 버스 노드 (612) 및 하나 이상의 로컬 종점들 (614) 을 포함할 수도 있으며, 여기서, 분산된 버스 노드 (612) 는 분산된 버스 (625) 를 통한 (예컨대, 제 2 디바이스 (630) 및 제 3 디바이스 (640) 상의 분산된 버스 노드들 (632 및 642) 을 통한) 제 1 디바이스 (610) 와 연관되는 로컬 종점들 (614) 과, 제 2 디바이스 (630) 및 제 3 디바이스 (640) 와 연관되는 로컬 종점들 (634 및 644) 사이의 통신들을 촉진시킬 수도 있다. 도 7 을 참조하여 아래에서 좀더 자세히 설명되는 바와 같이, 분산된 버스 (625) 는 대칭 멀티-디바이스 네트워크 토폴로지들을 지원할 수도 있으며, 디바이스 탈퇴 (drops-outs) 의 존재 시에 강건한 동작을 제공할 수도 있다. 이와 같이, 임의의 하부의 전송 프로토콜 (예컨대, Bluetooth, TCP/IP, Wi-Fi, 등) 과는 일반적으로 독립적일 수도 있는, 가상 분산된 버스 (625) 는 여러 보안 옵션들을, 비보안 (예컨대, 개방) 으로부터 보안 (예컨대, 인증 및 암호화) 까지 허용할 수도 있으며, 여기서, 보안 옵션들은 여러 디바이스들 (610, 630, 640) 이 서로에 대한 범위 또는 근접도에 들어갈 때 개입없이, 제 1 디바이스 (610), 제 2 디바이스 (630), 및 제 3 디바이스 (640) 사이의 자발적 (spontaneous) 접속들을 촉진하는 것과 동시에 사용될 수 있다.
본 개시물의 일 양태에 따르면, 도 7 은 제 1 디바이스 ("디바이스 A") (710) 및 제 2 디바이스 ("디바이스 B") (730) 가 통신하는 근접도-기반의 분산된 버스를 확립하는데 발견가능한 P2P 서비스들이 사용될 수도 있는 예시적인 메시지 시퀀스 (700) 를 예시한다. 일반적으로, 디바이스 A (710) 는 디바이스 B (730) 와 통신하도록 요청할 수도 있으며, 여기서, 디바이스 A (710) 는 이러한 통신들을 촉진시키는 것을 도울 수도 있는 버스 노드 (712) 에 더해서 통신하도록 요청을 행할 수도 있는 로컬 종점 (714) (예컨대, 로컬 애플리케이션, 서비스, 등) 을 포함할 수도 있다. 또, 디바이스 B (730) 는 로컬 종점 (714) 이 디바이스 A (710) 상의 로컬 종점 (714) 과 디바이스 B (730) 상의 로컬 종점 (734) 사이의 통신들을 촉진시키는 것을 도울 수도 있는 버스 노드 (732) 에 더해서 통신하려고 시도하고 있을 수도 있는 로컬 종점 (734) 을 포함할 수도 있다.
일 실시형태에서, 버스 노드들 (712 및 732) 은 메시지 시퀀스 단계 (754) 에서 적합한 발견 메커니즘을 수행할 수도 있다. 예를 들어, Bluetooth, TCP/IP, UNIX, 또는 기타 등등에 의해 지원되는 접속들을 발견하는 메커니즘들이 사용될 수도 있다. 메시지 시퀀스 단계 (756) 에서, 디바이스 A (710) 상의 로컬 종점 (714) 은 버스 노드 (712) 를 통해서 이용가능한, 엔티티, 서비스, 종점 등에 접속하도록 요청할 수도 있다. 일 실시형태에서, 요청은 로컬 종점 (714) 과 버스 노드 (712) 사이의 요청-및-응답 프로세스를 포함할 수도 있다. 메시지 시퀀스 단계 (758) 에서, 분산된 메시지 버스는 버스 노드 (712) 를 버스 노드 (732) 에 접속하고 이에 의해 디바이스 A (710) 와 디바이스 B (730) 사이에 P2P 접속을 확립하도록 형성될 수도 있다. 일 실시형태에서, 버스 노드 (712) 와 버스 노드 (732) 사이에 분산된 버스를 형성하는 통신들은 적합한 근접도-기반의 P2P 프로토콜 (예컨대, 근위의 네트워크들을 동적으로 생성하여 근위의 P2P 통신을 촉진시키기 위해 상이한 제조업자들로부터의 접속된 제품들 및 소프트웨어 애플리케이션들 사이의 상호운용성을 가능하게 하도록 설계된 AllJoyn™ 소프트웨어 프레임워크) 를 이용하여 촉진될 수도 있다. 대안적으로, 일 실시형태에서, 서버 (미도시) 는 버스 노드 (712) 와 버스 노드 (732) 사이의 접속을 촉진시킬 수도 있다. 더욱이, 일 실시형태에서, 적합한 인증 메커니즘이 버스 노드 (712) 와 버스 노드 (732) 사이에 접속을 형성하기 전에 사용될 수도 있다 (예컨대, 클라이언트가 인증 대화를 개시하기 위해 인증 지령을 전송할 수도 있는 SASL 인증 (authentication)). 또한, 메시지 시퀀스 단계 (758) 동안, 버스 노드들 (712 및 732) 은 다른 가용 종점들 (예컨대, 도 6 에서 디바이스 C (640) 상의 로컬 종점들 (644)) 에 관한 정보를 교환할 수도 있다. 이러한 실시형태들에서, 버스 노드가 유지하는 각각의 로컬 종점은 다른 버스 노드들로 광고될 수도 있으며, 여기서, 광고는 고유 종점 이름들, 전송 유형들, 접속 파라미터들, 또는 다른 적합한 정보를 포함할 수도 있다.
일 실시형태에서, 메시지 시퀀스 단계 (760) 에서, 버스 노드 (712) 및 버스 노드 (732) 는 획득된 로컬 종점들 (734 및 714) 과 연관되는 정보를 각각 이용하여, 여러 버스 노드들을 통해서 이용가능한 실제 획득된 종점들을 나타낼 수도 있는 가상 종점들을 생성할 수도 있다. 일 실시형태에서, 버스 노드 (712) 상에서 라우팅하는 메시지는 실제 및 가상 종점들을 이용하여, 메시지들을 전달할 수도 있다. 또, 원격 디바이스들 (예컨대, 디바이스 A (710)) 상에 존재하는 모든 종점에 대해 하나의 로컬 가상 종점이 있을 수도 있다. 또한, 이러한 가상 종점들은 분산된 버스 (예컨대, 버스 노드 (712) 와 버스 노드 (732) 사이의 접속) 를 통해서 전송된 메시지들을 멀티플렉싱하거나 및/또는 디-멀티플렉싱할 수도 있다. 일 양태에서, 가상 종점들은 마치 실제 종점들처럼 로컬 버스 노드 (712 또는 732) 로부터 메시지들을 수신할 수도 있으며, 메시지들을 분산된 버스를 통해서 포워딩할 수도 있다. 이와 같이, 가상 종점들은 메시지들을 종점 멀티플렉싱된 분산된 버스 접속으로부터 로컬 버스 노드들 (712 및 732) 로 포워딩할 수도 있다. 더욱이, 일 실시형태에서, 원격 디바이스 상의 가상 종점들에 대응하는 가상 종점들은 특정의 전송 유형들의 원하는 토폴로지들을 받아들이기 위해서 임의의 시간에 재접속될 수도 있다. 이러한 양태에서, UNIX 기반의 가상 종점들은 로컬로 간주될 수도 있으며, 이에 따라서, 재접속을 위한 후보들로서 간주되지 않을 수도 있다. 또, TCP-기반의 가상 종점들은 하나의 홉 라우팅 (hop routing) 용으로 최적화될 수도 있다 (예컨대, 각각의 버스 노드 (712 및 732) 가 서로 직접 접속될 수도 있다). 또한, Bluetooth-기반의 가상 종점들은 Bluetooth-기반의 마스터가 로컬 마스터 노드와 동일한 버스 노드일 수도 있는 단일 피코-넷 (single pico-net) (예컨대, 하나의 마스터 및 n 개의 슬레이브들) 용으로 최적화될 수도 있다.
메시지 시퀀스 단계 (762) 에서, 버스 노드 (712) 및 버스 노드 (732) 는 버스 인스턴스들을 병합하고 분산된 버스를 통해서 통신을 가능하게 하기 위해 버스 상태 정보를 교환할 수도 있다. 예를 들어, 일 실시형태에서, 버스 상태 정보는 널리 공지된 고유한 종점 이름 맵핑, 매칭 규칙들, 라우팅 그룹, 또는 다른 적합한 정보를 포함할 수도 있다. 일 실시형태에서, 상태 정보는 분산된 버스 기반의 로컬 이름을 이용하여 통신하는 로컬 종점들 (714 및 734) 과의 인터페이스를 이용하여 버스 노드 (712) 와 버스 노드 (732) 인스턴스들 사이에 통신될 수도 있다. 또 다른 양태에서, 버스 노드 (712) 및 버스 노드 (732) 는 분산된 버스에 피드백을 제공하는 것을 담당하는 로컬 버스 제어기를 각각 유지할 수도 있으며, 여기서, 버스 제어기는 글로벌 메소드들 (global methods), 인수들 (arguments), 신호들, 및 다른 정보를 분산된 버스와 연관되는 표준들로 변환할 수도 있다. 메시지 시퀀스 단계 (764) 에서, 버스 노드 (712) 및 버스 노드 (732) 는 위에서 설명한 바와 같이 버스 노드 접속들 동안 도입되는 임의의 변화들에 대해 각각의 로컬 종점들 (714 및 734) 에게 통지하기 위해 신호들을 통신 (예컨대, 브로드캐스트) 할 수도 있다. 일 실시형태에서, 새로운 및/또는 제거된 글로벌 및/또는 변환된 이름들은 이름 소유자 변경 신호들로 표시될 수도 있다. 더욱이, (예컨대, 이름 충돌들로 인해) 로컬로 손실될 수도 있는 글로벌 이름들은 이름 손실 신호들로 표시될 수도 있다. 또한, 이름 충돌들로 인해 전달되는 글로벌 이름들은 이름 소유자 변경 신호들로 표시될 수도 있으며, 버스 노드 (712) 와 버스 노드 (732) 가 분리되면 및/또는 분리될 때 사라지는 고유한 이름들은 이름 소유자 변경 신호들로 표시될 수도 있다.
위에서 사용된 바와 같이, 널리 공지된 이름들이 로컬 종점들 (714 및 734) 을 고유하게 기술하기 위해 사용될 수도 있다. 일 실시형태에서, 통신들이 디바이스 A (710) 와 디바이스 B (730) 사이에 발생할 때, 상이한 널리 공지된 이름 유형들이 사용될 수도 있다. 예를 들어, 디바이스 로컬 이름은 버스 노드 (712) 가 직접 부착하는 디바이스 A (710) 와 연관되는 버스 노드 (712) 상에 오직 존재할 수도 있다. 또 다른 예에서, 글로벌 이름은 모든 알려진 버스 노드들 (712 및 732) 상에 존재할 수도 있으며, 여기서 오직 그 이름의 하나의 소유자만이 모든 버스 세그먼트들 상에 존재할 수도 있다. 다시 말해서, 버스 노드 (712) 및 버스 노드 (732) 가 결합되고 임의의 충돌들이 일어날 때, 소유자들 중 하나는 글로벌 이름을 손실할 수도 있다. 또한 또 다른 예에서, 클라이언트가 가상 버스와 연관되는 다른 버스 노드들에 접속될 때, 변환된 이름이 사용될 수도 있다. 이러한 양태에서, 변환된 이름은 첨부된 말미 (end) 를 포함할 수도 있다 (예컨대, 글로벌 고유 식별자 (Globally Unique Identifier) "1234" 를 가진 분산된 버스에 접속된 널리 공지된 이름 "org.foo" 를 가진 로컬 종점 (714) 은 "G1234.org.foo" 로서 발견될 수도 있다).
메시지 시퀀스 단계 (766) 에서, 버스 노드 (712) 및 버스 노드 (732) 는 다른 버스 노드들에게 종점 버스 토폴로지들에 대한 변화들을 통지하기 위해 신호들을 통신 (예컨대, 브로드캐스트) 할 수도 있다. 그 후, 로컬 종점 (714) 으로부터의 트래픽은 가상 종점들을 통과하여 디바이스 B (730) 상의 의도된 로컬 종점 (734) 에 도달할 수도 있다. 또, 동작 시, 로컬 종점 (714) 과 로컬 종점 (734) 사이의 통신들은 라우팅 그룹들을 이용할 수도 있다. 일 양태에서, 라우팅 그룹들은 종점들로 하여금, 종점들의 서브세트로부터 신호들, 메소드 콜들, 또는 다른 적합한 정보를 수신가능하게 할 수도 있다. 이와 같이, 라우팅 이름은 버스 노드 (712 또는 732) 에 접속된 애플리케이션에 의해 결정될 수도 있다. 예를 들어, P2P 애플리케이션은 애플리케이션에 내장된, 고유하고 널리 공지된 라우팅 그룹 이름을 이용할 수도 있다. 또, 버스 노드들 (712 및 732) 은 라우팅 그룹들에의 로컬 종점들 (714 및 734) 의 등록 및/또는 등록해제 (de-registering) 를 지원할 수도 있다. 일 실시형태에서, 라우팅 그룹들은 현재의 버스 인스턴스를 넘어서 지속성을 갖지 않을 수도 있다. 또 다른 양태에서, 애플리케이션들은 그들이 분산된 버스에 접속할 때마다 그들의 선호되는 라우팅 그룹들에 등록할 수도 있다. 또한, 그룹들은 개방될 수도 있거나 (예컨대, 임의의 종점이 결합될 수 있다) 또는 폐쇄될 수도 있다 (예컨대, 오직 그룹의 생성자만이 그룹을 수정할 수 있다). 여전히 또한, 버스 노드 (712 또는 732) 는 다른 원격 버스 노드들에게 라우팅 그룹 종점들에 대한 추가들, 제거들, 또는 다른 변화들을 통지하기 위해 신호들을 전송할 수도 있다. 이러한 실시형태들에서, 버스 노드 (712 또는 732) 는 멤버가 그룹에 추가되거나 및/또는 그로부터 제거될 때는 언제나, 라우팅 그룹 변화 신호를 다른 그룹 멤버들에게 전송할 수도 있다. 또, 버스 노드 (712 또는 732) 는 라우팅 그룹으로부터 멤버들을 먼저 제거하지 않고, 라우팅 그룹 변화 신호를 그 분산된 버스로부터 분리하는 종점들로 전송할 수도 있다.
본 개시물의 일 양태에 따르면, 도 8 은 Wi-Fi 네트워크를 통해서 사용되는 발견가능한 P2P 서비스들이 헤드리스 디바이스들 (예컨대, 네트워크 접속을 통해서 제어될 수 있으며, 모니터, 키보드, 및 마우스 없이 동작하도록 구성되어 있는, 컴퓨터 시스템 또는 디바이스) 의 원격 온보딩을 가능하게 할 수도 있는 예시적인 시스템 아키텍처 (800) 를 예시한다. 도 8 에 나타낸 바와 같이, 시스템 아키텍처 (800) 는 개인 액세스 지점 (AP) 에 결합하여 인증함으로써 Wi-Fi 네트워크에 참가하려고 시도하는 온보디 디바이스 (810) 를 포함할 수도 있으며, 온보디 디바이스 (810) 는 Wi-Fi 네트워크에 액세스하도록 사전에 구성되어 있지 않은 새로운 디바이스 또는 Wi-Fi 네트워크에 액세스하고 그 후에 오프보드하도록 (예컨대, 디바이스를 공장-디폴트 설정들로 리셋하거나 또는 아니면 디바이스와 연관된 구성 상태를 변경하거나, Wi-Fi 네트워크와 연관된 구성 상태를 변경하거나, 등등을 변경하도록) 사전에 구성된 디바이스에 대응할 수도 있다. 더욱이, 시스템 아키텍처 (800) 는 발견가능한 P2P 서비스들을 이용하여 온보디 디바이스 (810) 를 Wi-Fi 네트워크에 원격으로 온보드하는, Wi-Fi 네트워크 상에서 구성되고 승인되어 있는 온보더 디바이스 (820) 를 포함할 수도 있다.
일 실시형태에서, 온보디 디바이스 (810) 및 온보더 디바이스 (820) 는 원격 온보딩을 용이하게 할 수도 있는 발견가능한 P2P 서비스들을 제공하는 개개의 P2P 플랫폼들 (814) (예컨대, 위에서 언급된 AllJoyn™ 소프트웨어 프레임워크) 와 통신하는 개개의 온보딩 애플리케이션들 (812, 822) 을 실행할 수도 있다. 이와 같이, 온보디 디바이스 (810) 및 온보더 디바이스 (820) 는 도 6 내지 도 7 과 관련하여 위에서 설명된 로컬 종점들에 대응할 수도 있는, 개개의 온보딩 애플리케이션들 (812, 822) 사이의 통신을 가능하게 할 수도 있는 분산된 버스 (825) 를 형성하기 위해 아래에서 좀더 자세히 설명되는 메커니즘들을 이용하여 서로 통신할 수도 있다. 더욱이, 일 실시형태에서, 온보디 디바이스 (810) 및 온보더 디바이스 (820) 는 온보디 디바이스 (810) 와 온보더 디바이스 (820) 사이에 메시지 라우팅을 처리하는 호스트 "데몬" 버스 프로세스를 실행하는 개개의 운영 시스템들 (816, 826) 을 실행할 수도 있다. 예를 들어, 일 실시형태에서, 개개의 온보딩 애플리케이션들 (812, 822) 은 온보디 디바이스 (810) 및 온보더 디바이스 (820) 상에서 실행하는 개개의 호스트 데몬들과 통신할 수도 있으며, 여기서, 개개의 호스트 데몬들은 분산된 버스 (825) 의 로컬 세그먼트들을 구현하고 분산된 버스 (825) 를 가로질러 메시지 흐름들을 조정한다. 이 구성에서, 온보딩 애플리케이션 (812) 은 본원에서 좀더 상세히 설명되는 바와 같이, Wi-Fi 네트워크에 액세스하기 위해 온보디 디바이스 (810) 를 구성하고 승인하는 어떤 프로세스들을 촉진시키는 온보딩 서비스 (818) 에 대한 원격 메소드 콜들을 행할 수 있다. 이와 같이, 온보딩 애플리케이션 (812) 은 온보딩 서비스 (818) 가 로컬 오브젝트인 것처럼 온보딩 서비스 (818) 와 통신할 수도 있으며, 여기서, 파라미터들은 소스에서 마샬되어 (marshaled) 로컬 호스트 데몬에 의해 로컬 버스 세그먼트로부터 라우트 오프되고 그 후 네트워크 링크를 통해서 온보더 디바이스 (820) 상의 로컬 호스트 데몬으로 투명하게 전송될 수도 있다. 온보더 디바이스 (820) 상에서 실행하는 데몬은 그 후 목적지가 로컬 온보딩 애플리케이션 (822) 이라고 결정하고, 로컬 온보딩 애플리케이션 (822) 상에서 파라미터들을 언마샬시켜 (unmarshaled) 원격 메소드를 호출시키도록 배열할 수도 있다.
이와 같이, 데몬들은 일반적으로 하나 이상의 백그라운드 프로세스들에서 실행할 수도 있으며, 온보딩 애플리케이션들 (812, 822) 및 온보딩 서비스 (818) 는 별개의 프로세스들에서 실행하고, 이에 의해 온보딩 애플리케이션들 (812, 822) 및 온보딩 서비스 (818) 는 로컬 호스트 데몬을 나타내는 개개의 로컬 "버스 부착들" 을 가지고 그들 사이에 메시지 라우팅을 처리할 수도 있다. 대안적으로, 어떤 경우들에서, 온보디 디바이스 (810) 는 씬 클라이언트 (thin client), 내장된 디바이스, 또는 동작 환경 (예컨대, 제한된 사이즈, 메모리, 프로세서 속도, 전원, 주변장치들, 사용자 인터페이스들, 등) 을 제한한 다른 디바이스일 수도 있다. 이와 같이, 온보디 디바이스 (810) 가 제한된 능력들을 가지는 경우, P2P 플랫폼 (814) 을 이용하는 각각의 애플리케이션 또는 서비스에의 로컬 버스 부착들을 번들링하는 것은 (예컨대, 상당한 버스 부착들이 상당한 네트워크 접속들, 메모리, 등을 요할 수도 있기 때문에) 성능을 방해할 수도 있다. 이들 경우들에서, 온보딩 애플리케이션 (812) 및/또는 온보딩 서비스 (818) 내의 로컬 버스 부착을 가지는 대신, 온보딩 애플리케이션 (812) 은 씬 클라이언트 애플리케이션 프로그램 인터페이스를 대신 채용할 수도 있으며, P2P 플랫폼 (814) 은 온보딩 애플리케이션 (812) 을 실행하는 온보디 디바이스 (810) 상에서 호스트 데몬을 이용하는 씬 클라이언트 프로세스를 대신 채용할 수도 있다. 그러나, 어느 경우에나, Wi-Fi 네트워크에 액세스하기 위해 온보디 디바이스 (810) 를 구성하고 승인하도록 온보디 디바이스 (810) 와 온보더 디바이스 (820) 사이에 발생하는 콜 흐름들 및 거동은, 온보딩 애플리케이션 (812) 이 로컬 버스 부착을 구현하여 호스트 데몬과 통신하든 또는 호스트 데몬과 직접 통신하든 실질적으로 동일할 수도 있다.
상기 개관은 Wi-Fi 네트워크를 통해서 온보디 디바이스 (810) 의 원격 온보딩을 가능하게 하는데 발견가능한 P2P 서비스들이 사용될 수도 있는 시스템 아키텍처 (800) 에 관련하여 제공하였지만, 발견가능한 P2P 서비스들을 통해서 Wi-Fi 네트워크를 통해서 원격 온보딩을 가능하게 하는데 사용될 수도 있는 특정의 메커니즘들에 관련된 여러 양태들이 이하 설명될 것이다.
좀더 자세하게 설명하면, 디바이스가 급전될 때, 디바이스는 일반적으로 그와 연관된 구성 상태에 따라서 "온보딩" 모드 또는 "접속된" 모드에 진입할 수도 있다. 온보딩 모드 또는 접속된 모드에서, 디바이스는 다른 피어 디바이스들이 디바이스에 접속하여 네트워크 구성 증명서들 및 구성 정보를 제공하기를 대기할 수도 있다. 더욱이, 온보딩 모드에서, 디바이스는 Wi-Fi 액세스 지점 (AP) 이 되고 Wi-Fi 클라이언트들이 그에 접속하기를 대기할 수도 있다. 예를 들어, 일 실시형태에서, 온보딩 모드에서 디바이스는 무선 클라이언트 안테나가 액세스 지점 및 클라이언트 양쪽으로서 동작할 수도 있는 (예컨대, 디바이스 상의 소프트웨어가 근처에서의 다른 무선 디바이스들이 사용할 수 있는 무선 또는 휴대형 핫스팟을 생성할 수도 있으며, 이에 의해 클라이언트 안테나 및 데이터 접속을 가지는 셀룰러 전화기들 또는 다른 디바이스들이 그렇지 않으면 데이터 접속이 없을 수도 있는 근처에서의 다른 무선 디바이스들을 서빙하기 위해 액세스 지점으로서 역할을 할 수 있는) 소프트웨어-이용가능 액세스 지점 (SoftAP) 모드에 진입할 수도 있다. 대안적으로, 접속된 모드에서, 디바이스는 디바이스가 이미 구성되어 있는 무선 네트워크에 접속할 수도 있다. 온보딩 모드 또는 접속된 모드에서, 디바이스는 일반적으로 다른 피어 디바이스들이 그에 접속하여 적합한 네트워크 구성 및 증명서 정보를 제공하도록 대기할 수도 있다.
따라서, 본원에서 좀더 자세히 설명되는 바와 같이, 도 9a 는 발견가능한 P2P 서비스들이 Wi-Fi 네트워크를 통해서 헤드리스 디바이스들의 원격 온보딩을 가능하게 하는데 사용할 수도 있는 예시적인 메시지 시퀀스 (900A) 를 예시한다. 예를 들어, 일 실시형태에서, 도 9a 에 도시된 메시지 시퀀스 (900A) 는 개인 Wi-Fi 네트워크에 참가하려고 시도하는 온보디 디바이스 (910) 와 온보디 디바이스 (910) 를 개인 Wi-Fi 네트워크에 원격으로 온보드할 수도 있는 온보더 디바이스 (920) 사이에 발생할 수도 있다. 특히, 온보디 디바이스 (910) 및/또는 온보더 디바이스 (920) 는 P2P 클라이언트들 상에서 실행하는 애플리케이션들을 실행할 수도 있는 스마트 디바이스들에 대응할 수도 있으며, 온보디 디바이스 (910) 는 SoftAP (또는, "온보딩" 모드) 에서 시동하여, 발견가능한 P2P 서비스들과 연관된 코어 데몬에 대한 브로드캐스트 탐색을 수행할 수도 있다. 이용가능하면, 온보더 디바이스 (920) 는 신속 응답 (QR) 코드를 스캐닝하여, 온보디 디바이스 (910) 에 대응하는 SoftAP 와 연관된 정보를 획득할 수도 있다. 대안적으로, 온보더 디바이스 (920) 는 SoftAP (또는, 온보딩) 모드에 대한 디바이스들에 대해 스캐닝하여, 스캐닝할 때에 발견된 임의의 디바이스들을 포함하는 리스트 중에서 SoftAP 서비스 세트 식별자 (SSID) 를 선택하도록 최종 사용자 (925) 에게 프롬프트할 수도 있다. 예를 들어, 온보디 디바이스 (910) 와 연관된 SoftAP SSID 는 온보디 디바이스 (910) 에 의해 송신된 브로드캐스트 탐색을 발견하는 것에 응답하여 찾아질 수도 있다. 후자의 경우에, QR 코드가 이용불가능하거나 또는 그렇지 않으면 SoftAP 정보가 그로부터 획득될 수 없는 경우, 메시지 시퀀스 (900A) 는 최종 사용자 (925) 로부터 SoftAP 선택을 수신하는 것을 더 포함할 수도 있으며, 온보더 디바이스 (920) 상에서 실행하는 애플리케이션은 그 후 온보디 디바이스 (910) 에 대응하는 SoftAP 와 연관된 패스프레이즈 (passphrase) 를 제공하도록 최종 사용자 (925) 에게 프롬프트할 수도 있다. 온보더 디바이스 (920) 는 그 후 온보디 디바이스 (910) 에 대응하는 SoftAP 에 접속할 수도 있으며, 온보디 디바이스 (910) 는 결과적으로 온보더 디바이스 (920) 상에서 실행하는 코어 P2P 데몬에 접속할 수도 있다.
온보디 디바이스 (910) 는 그 후 온보더 디바이스 (920) 에서 검출될 수도 있는 공공 어나운스먼트 신호를 송신할 수도 있다. 일 실시형태에서, 온보더 디바이스 (920) 가 적합한 온보딩 인터페이스를 가지면, 온보더 디바이스 (920) 는 온보디 디바이스 (910) 와 세션을 확립하고 그와 연관된 서비스들에 결합할 수도 있다. 참가 동안, 보안 접속은 공유된 대칭 키가 공유된 증명을 이용하여 발생될 수도 있는 키 교환 알고리즘에 기초하여 확립될 수도 있다. 예를 들어, 온보디 디바이스 (910) 및 온보더 디바이스 (920) 가 서로 결합하려고 처음에 시도할 때, 공유된 증명은 널리 공지된 증명 (예컨대, 원래 장비 제조 프로세스 동안 공장 설정들의 일부로서 구성될 수도 있는, 온보딩 인터페이스를 위한 디폴트 패스코드) 에 대응할 수도 있다. 그 후에, 널리 공지된 또는 디폴트 증명을 공유 비밀 (예컨대, 최종 사용자 (925) 에 의해 설정된 맞춤 패스워드) 로 즉시 변경하는 적합한 서비스 방법이 호출될 수도 있다. 보안 접속을 적절히 확립하는 것에 응답하여, 온보더 디바이스 (920) 는 그 후 개인 Wi-Fi 네트워크와 연관된 구성 정보를 온보디 디바이스 (910) 로 전송하는 적합한 서비스 방법을 호출할 수도 있다. 예를 들어, 일 실시형태에서, 온보더 디바이스 (920) 로부터 온보디 디바이스 (910) 로 전송되는 구성 정보는 SSID, 패스프레이즈 또는 다른 인증 증명서들, 및/또는 개인 Wi-Fi 네트워크 상의 개인 액세스 지점 (AP) 과 연관된 인증 유형을 포함할 수도 있다. 일 실시형태에서, 온보디 디바이스 (910) 는 그 후 개인 AP 구성 정보가 수신되어 적합하게 설정되었는지 여부를 표시하기 위해 상태 신호를 온보더 디바이스 (920) 에 반환할 수도 있으며, 온보더 디바이스 (920) 는 그 후 온보디 디바이스 (910) 에게 개인 AP 에 접속하도록 명령할 수도 있다. 일 실시형태에서, 온보디 디바이스 (910) 가 개인 AP 에 성공적으로 참가하는 것에 응답하여, 온보디 디바이스 (910) 는 그 후 온보딩 모드를 중지하는 적합한 서비스 방법을 호출할 수도 있다. 더욱이, 온보디 디바이스 (910) 가 접속된 모드에서 동작할 (즉, 이미 "온보드되어" 있을) 때 동일한 메커니즘들이 사용될 수도 있다. 예를 들어, 온보디 디바이스 (910) 는 온보더 디바이스 (920) 와 동일한 Wi-Fi 네트워크에 접속되어, 그 네트워크 상에서 실행하는 P2P 서비스들을 발견하여 결합할 수도 있으며, 이에 의해 온보더 디바이스 (920) 는 온보디 디바이스 (910) 와 연관된 네트워크 구성을 원격으로 수정함으로써 온보디 디바이스 (910) 로 하여금 상이한 네트워크로 시프트가능하게 할 수도 있다. 또한 계속해서, 온보디 디바이스 (910) 가 빠른 채널 스위칭을 지원하면, 온보더 디바이스 (920) 는 온보디 디바이스 (910) 가 개인 AP 에 대한 접속 시도를 완료할 때 접속 결과 신호를 수신할 수도 있으며, 접속 결과 신호는 SoftAP 링크를 통하여 전송될 수도 있으며 접속 시도로부터의 결과를 표시하는 적합한 값 (예컨대, 승인 (validated), 미도달가능 (unreachable), 미지원 (unsupported) 프로토콜, 미승인 (unauthorized), 에러, 등) 을 포함할 수도 있다.
본 개시물의 일 양태에 따르면, 도 9b 는 발견가능한 P2P 서비스들이 Wi-Fi 네트워크를 통해서 헤드리스 디바이스들의 원격 온보딩을 가능하게 하는데 사용될 수도 있는 다른 예시적인 메시지 시퀀스 (900B) 를 예시한다. 특히, 어떤 디바이스들은 애플리케이션 프로그램 인터페이스 (API) 를 통해서 Wi-Fi 스캐닝들을 프로그램적으로 개시하는 것을 지원하기에 부족한 운영 시스템들 또는 다른 플랫폼들을 실행할 수도 있으며, 이 경우, 도 9a 에 나타낸 어떤 동작들은 지원되지 않을 수도 있다. 예를 들어, 적합하게 구성된 API 가 Android 운영 시스템 상에서 Wi-Fi 스캐닝을 프로그램적으로 개시하는데 사용될 수 있으며, 반면 Wi-Fi 스캐닝을 프로그램적으로 개시하는 것은 iOS 와 같은 다른 운영 시스템들 상에서 미지원될 수도 있다. 이와 같이, 하나의 예시적인 유즈 케이스에서, Android 운영 시스템을 실행하는 온보더 디바이스 (920) 는 도 9a 에 나타낸 메시지 시퀀스를 이용할 수도 있으며, 반면 iOS 운영 시스템을 실행하는 온보더 디바이스 (920) 는 도 9b 에 나타낸 메시지 시퀀스를 이용할 수도 있다. 일반적으로, 메시지 시퀀스들 (900A 및 900B) 은 실질적으로 유사할 수도 있다. 그러나, 최종 사용자 (925) 에게 스캐닝 리스트 중에서 SoftAP SSID 를 선택하고 SoftAP 패스프레이즈를 공급하도록 프롬프트하는 대신, 메시지 시퀀스 (900B) 는 Wi-Fi 설정들 스크린, 또는 (예컨대, 적합한 SoftAP SSID 가 프로그램적으로 개시된 Wi-Fi 스캐닝을 통해서 획득될 수 없기 때문에) 온보더 디바이스 (920) 가 Wi-Fi 네트워크를 선택하기 위해 채용하는 다른 사용자 인터페이스에 관한 대화 (dialog) 를 준비할 수도 있다. 게다가, 온보더 디바이스 (920) 는 SoftAP 와 연관된 이름 접두부 및 패스프레이즈를 제안하는 설비를 포함하고 최종 사용자 (925) 가 적합한 Wi-Fi 설정들 스크린 중에서 SoftAP 를 선택하도록 안내할 수도 있다. 최종 사용자 (925) 는 그 후 온보더 디바이스 (920) 상의 애플리케이션에 제공될 수도 있는 선택을 행할 수도 있다. 일 실시형태에서, 메시지 시퀀스 (900B) 는, 그 후 적합한 온보딩 인터페이스가 이용가능하면 온보더 디바이스 (920) 가 온보디 디바이스 (910) 와 세션을 확립하고 그와 연관된 서비스들과 결합할 때까지, 온보더 디바이스 (920) 및 온보디 디바이스 (910) 가 메시지 시퀀스 (900A) 에 대해 위에서 설명한 방법과 유사한 방법으로 통신하게 할 수도 있다.
일 실시형태에서, 메시지 시퀀스 (900A) 가 온보더 디바이스 (920) 상에서 프로그램적으로-개시된 Wi-Fi 스캐닝을 통해서 획득될 수 없는 Wi-Fi 스캐닝 리스트 중에서 개인 AP 를 선택하도록 최종 사용자 (925) 에게 프롬프트하는 지점에서, 메시지 시퀀스 (900B) 는 온보더 디바이스 (920) 가 온보디-지원된 Wi-Fi 스캐닝을 이용하여 Wi-Fi 스캐닝 리스트를 획득할 수도 있는 추가적인 통신 흐름들을 포함할 수도 있다. 예를 들어, 일 실시형태에서, 온보더 디바이스 (920) 는 온보디 디바이스 (910) 에게 그에 근접한 모든 Wi-Fi 액세스 지점들을 스캐닝하도록 명령하는 적합한 서비스 방법을 호출할 수도 있으며, 온보디 디바이스 (910) 는 그 후에 일련의 SSID들 및 임의의 연관된 인증 유형들을 포함하는 Wi-Fi 스캐닝 리스트를 온보더 디바이스 (920) 에 반환함으로써, 온보디-지원된 Wi-Fi 스캐닝을 완료할 수도 있다. 일 실시형태에서, 메시지 시퀀스 (900B) 는 그 후 최종 사용자 (925) 에게 개인 AP 를 메시지 시퀀스 (900A) 과 동일한 방법으로 선택하도록 프롬프트할 수도 있으며, 도 9a 에 대해 위에서 설명된 통신 흐름들과 실질적으로 동일한 후속 통신 흐름들을 포함할 수도 있다.
본 개시물의 일 양태에 따르면, 도 10 은 온보더 디바이스가 발견가능한 P2P 서비스들을 이용하여 온보디 디바이스를 Wi-Fi 네트워크를 통해서 원격으로 온보드하도록 수행할 수도 있는 예시적인 방법 (1000) 을 예시하며, 온보디 디바이스는 헤드리스 디바이스에 대응할 수도 있다. 특히, 온보더 디바이스는 먼저, 블록 (1005) 에서 개인 Wi-Fi 네트워크에 참가하려고 시도중인 온보디 디바이스에 대응하는 SoftAP 정보를 획득할 수도 있다. 예를 들어, 일 실시형태에서, 블록 (1005) 은 온보더 디바이스 상의 카메라로 QR 코드를 스캐닝하는 것을 포함할 수도 있으며, 이 경우, SoftAP 정보는 스캐닝된 QR 코드로부터 획득될 수도 있거나, 또는 블록 (1005) 은 대안적으로 SoftAP 정보에 진입하도록 사용자에게 프롬프트할 수도 있으며, 이 경우, SoftAP 정보는 사용자로부터 획득될 수도 있다. 어느 경우에나, SoftAP 정보를 획득하는 것에 응답하여, 온보더 디바이스는 그 후 블록 (1010) 에서 온보디 디바이스에 대응하는 SoftAP 에 (예컨대, 클라이언트로서) 접속하도록 시도할 수도 있다. 온보더 디바이스는 그 후 블록 (1015) 에서 시도된 접속이 성공적이었는지 여부를 결정할 수도 있으며, 여기서, 온보더 디바이스가 온보디 디바이스에 대응하는 SoftAP 에 접속하는데 실패하는 것에 응답하여 에러 메시지가 블록 (1060) 에서 발생할 수도 있다. 그렇지 않으면, 시도된 접속이 성공적이었다고 결정하는 것에 응답하여, 온보더 디바이스는 그 후 블록 (1020) 에서 온보딩 서비스를 탐색하여 그에 접속할 수도 있다. 더욱이, 일 실시형태에서, 온보더 디바이스는 SoftAP 및 온보딩 서비스에 성공적으로 접속하는 것에 응답하여 블록 (1020) 에서 개인 AP 정보로 온보디 디바이스를 구성할 수도 있다. 예를 들어, 일 실시형태에서, 온보더 디바이스는 블록 (1020) 에서 개인 AP 와 연관된 SSID, 인증 증명서들 (예컨대, 패스프레이즈), 및/또는 인증 유형을 온보디 디바이스로 전송하여, 온보디 디바이스를 구성할 수도 있으며, 온보더 디바이스는 그 후 블록 (1030) 에서 온보디 디바이스로 하여금 개인 AP 에 접속하도록 명령할 수도 있다.
일 실시형태에서, 온보더 디바이스는 그 후 블록 (1035) 에서 개인 AP 에 접속하려고 시도하고 있는 온보디 디바이스가 성공적으로 승인되었는지 여부를 결정할 수도 있다. 예를 들어, 온보디 디바이스는 일반적으로 블록 (1025) 에서 전송된 개인 AP 구성 및 승인 정보를 적절히 수신하는 것에 응답하여 승인 프로세스를 수신할 수도 있다. 이와 같이, (예컨대, 온보디 디바이스가 무효한 인증 증명서들을 제공하였거나 또는 아니면 유효한 구성 정보를 제공하는데 실패하였기 때문에) 온보디 디바이스가 성공적으로 승인하는데 실패하였다고 블록 (1035) 에서 결정하는 것에 응답하여, 에러 메시지가 블록 (1060) 에서 반환될 수도 있다. 대안적으로, 온보디 디바이스가 성공적으로 승인되었으면, 온보더 디바이스는 그 후 블록 (1040) 에서 개인 AP 상에 온보디 디바이스를 로케이트시키고 그 후 블록 (1045) 에서 온보디 디바이스가 개인 AP 상에서 발견되었는지 여부를 결정하려고 시도할 수도 있다. 온보디 디바이스가 개인 AP 상에서 발견될 수 없다고 결정하는 것에 응답하여, 그 효과에 대한 에러 메시지가 블록 (1060) 에서 발생될 수도 있다. 그렇지 않으면, 블록 (1045) 에서 온보디 디바이스가 개인 AP 상에서 발견되었다고 결정하는 것에 응답하여, 온보더 디바이스는 온보디 디바이스가 Wi-Fi 네트워크에 성공적으로 온보드되었다고 결정할 수도 있으며 온보딩 프로세스는 블록 (1060) 에서 종료할 수도 있다.
본 개시물의 일 양태에 따르면, 도 11 은 온보디 디바이스가 발견가능한 P2P 서비스들을 이용하여 Wi-Fi 네트워크에 원격으로 온보드하도록 수행할 수도 있는 예시적인 방법 (1100) 을 예시한다. 예를 들어, 일 실시형태에서, 본 방법 (1100) 은 (예컨대, 오프보드된 모드에 있는 동안, 공장 설정들로 리셋되어진 후, Wi-Fi 네트워크에의 접속을 상실한 후, 기타 등등 이후) 온보디 디바이스가 블록 (1105) 에서 온보딩 모드에 진입할 때 발생할 수도 있는, 온보디 디바이스가 개인 Wi-Fi 네트워크에 참가하는데 이용할 수 있는 구성 및 증명서 정보를 온보디 디바이스에 제공하려고 온보더 디바이스가 시도하는 도 10 에 나타낸 본 방법 (1000) 동안 및/또는 그와 관련하여 수행될 수도 있다. 더욱이, 본 방법 (1100) 은 온보디 디바이스와 연관된 구성 상태에 의존할 수도 있는 SoftAP 가 이용가능한 동안 수행될 수도 있다. 예를 들어, 일 실시형태에서, 개인 AP 가 구성되지 않거나, 개인 AP 가 구성되지만 승인되지 않거나, 개인 AP 는 구성되지만 에러가 발생하였거나, 및/또는 개인 AP 는 구성되고 온보디 디바이스가 개인 AP 에 접속하려고 재시도 하고 있는 구성 상태를 온보디 디바이스가 가질 때 SoftAP 가 이용가능할 수도 있다 (예컨대, 온보디 디바이스가 개인 AP 를 구성하여 그에 대해 승인되었지만 구성가능한 개수의 지연된 시도들 이후 접속하는데 실패하면, 온보디 디바이스는 SoftAP 가 온보디 디바이스로 하여금 재구성가능하도록 인에이블되는 재시도 상태로 전이할 수도 있으며, 온보디 디바이스는 그 후 그 구성된 및 승인된 상태로 되돌아가서, 타이머가 만료된 후 개인 AP 와 접속하려고 재시도할 수도 있다).
일 실시형태에서, 개인 AP 는 일반적으로 방법 (1100) 이 시작할 때 구성되지 않을 수도 있으며, 이에 따라서 온보디 디바이스가 블록 (1110) 에서 개인 AP 구성 정보를 초기에 수신할 수도 있다. 예를 들어, 일 실시형태에서, 블록 (1110) 은 온보디 디바이스가 온보더 디바이스로부터 개인 AP 와 연관된 이름 (예컨대, SSID), 인증 증명서들 (예컨대, 패스프레이즈), 및/또는 인증 유형을 수신하는 것을 포함할 수도 있다. 인증 유형이 "임의의" 와 동일할 때, 온보디 디바이스는 그 상에서 지원되는 하나 이상의 가능한 인증 유형들을 이용하여 개인 AP 에 접속하려고 시도할 수도 있다. 어쨌든, 온보디 디바이스는 그 후 블록 (1115) 에서 그 수신된 개인 AP 정보를 이용하여 개인 AP 에 접속하려고 시도하고, 블록 (1120) 에서 그 시도된 접속이 성공적이었는지 여부를 결정할 수도 있다. 개인 AP 에 접속하는데 실패하는 것에 응답하여, 블록 (1140) 에서 에러 메시지가 발생될 수도 있다. 그렇지 않으면, 개인 AP 에 성공적으로 접속하는 것에 응답하여, 온보디 디바이스는 위에서 좀더 상세히 설명된 메커니즘들과 유사한 메커니즘들을 이용하여 블록 (1125) 에서 개인 AP 를 승인하려고 시도할 수도 있다. 블록 (1130) 에서 그 시도된 승인이 실패하였다고 결정하는 것에 응답하여, 온보디 디바이스는 그 후 블록 (1125) 에서 사용된 패스프레이즈 및/또는 인증 유형이 유효하지 않다고 선언하기 전에 블록 (1125) 에서 승인 프로세스를 특정의 횟수 만큼 재시도하려고 시도할 수도 있다. 예를 들어, 승인 (validating) 프로세스는 블록 (1125) 에서 최대 횟수 N 만큼 시도될 수도 있거나, 또는 온보디 디바이스는 대안적으로 고장에 대한 이유가 알려져 있으면 최대 횟수의 재시도들을 수행하지 않을 수도 있다. 어쨌든, 성공적으로 승인하는데 실패하는 것에 응답하여, 적합한 에러 메시지가 블록 (1140) 에서 발생될 수도 있거나, 또는 온보딩 프로세스가 개인 AP 를 성공적으로 승인하는 것에 응답하여 블록 (1135) 에서 적합하게 완료될 수도 있다.
IoT 디바이스들이 점점 더 확산됨에 따라, 사용자들은 끊임없이 더 많은 개수의 IoT 디바이스들과 상호작용할 것이다. 이 때문에, IoT 디바이스가 물리적으로 액세스되어야 하는 경보를 사용자가 수신할 때, 사용자는 설령 사용자가 그 디바이스의 이름 및/또는 유형을 알고 있더라도, 어느 물리적인 IoT 디바이스가 액세스되어야 하는지를 식별하는데 어려움을 겪을 수도 있다. 예를 들어, 방에 3개의 동일한 종류의 비디오 프로젝터가 존재할 수도 있다. 사용자는 "프로젝터 2" 에서의 전구가 대체되어야 한다는 경보를 수신할 수도 있다. 예를 들어, 프로젝터들이 "프로젝터 1", "프로젝터 2", 및 "프로젝터 3" 으로 명명되면, 사용자는 어느 프로젝터가 "프로젝터 2" 인지를 용이하게 식별할 수 없을 수도 있다. 프로젝터들이 라벨링되더라도, 라벨들은 바로 식별할 수 없을 수도 있거나, 또는 그들은 사다리 (ladder) 를 이용하지 않고는 시인불가능할 수도 있다.
다른 예로서, 사용자는 그 또는 그녀가 어디에 홈 보안 센서와 같은 특정의 IoT 디바이스를 설치하였는지를 잊어 버렸을 수도 있다. 예를 들어, 센서가 사용자에게 새로운 배터리를 필요로 한다고 경보하면, 사용자는 어느 센서가 경보를 전송하고 있는지 뿐만 아니라, 센서가 어디에 로케이트되어 있는지를 식별하는데 어려움을 겪을 수도 있다.
특정의 IoT 디바이스 및 그의 로케이션을 빨리 식별할 때에 사용자를 돕기 위해, IoT 디바이스를 온보딩하거나 또는 구성하는 사용자는 IoT 디바이스의 사진을 찍어서, 온보딩 프로세스 동안 또는 이후에 그 이미지를 IoT 디바이스로 송신할 수 있다. IoT 디바이스는 그 이미지를 저장하고, 경보 및/또는 그의 관련 (About) 정보를 사용자에게 전송할 때, 또한 이미지를 전송할 수 있다. 그의 환경에서 IoT 디바이스의 사진을 보는 것은 사용자가 IoT 디바이스 및 그의 로케이션을 빨리 식별하는 것을 도울 것이다.
예를 들어, 도 8 내지 도 11 을 참조하여 위에서 설명된 온보딩 프로세스 동안, 사용자가 스마트폰, 태블릿 컴퓨터, 또는 카메라를 가지는 일부 다른 디바이스를 이용하여 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 디바이스는 예를 들어, 그의 GPS 좌표들에서의 변화, 및/또는 임계치 이상 및/또는 임계치 시간 기간보다 더 긴 가속도를 검출함으로써, IoT 디바이스가 이동되었다는 것을 알 수도 있다. 그 경우, IoT 디바이스는 IoT 디바이스가 직접 (예컨대, 메시지를 사용자의 스마트폰으로 전송함으로써), 또는 온보더 또는 구성기 디바이스를 통해서, 이동되었다고 사용자에게 경보할 수 있다. 이에 응답하여, 사용자는 위에서 설명한 바와 같이, 새로운 사진으로 IoT 디바이스를 재구성하거나 또는 재-온보드할 수 있거나, 또는 온보더 또는 구성기 디바이스는 온보딩 또는 구성 애플리케이션을 시동하고 IoT 디바이스의 새로운 사진을 찍도록 사용자에게 프롬프트할 수 있다.
도 12 는 본 개시물의 일 실시형태에 따른, 온보디 디바이스 (1210) 의 이미지로 온보디 디바이스 (1210) 를 식별하는 예시적인 흐름을 예시한다. 온보디 디바이스 (1210) 는 도 2a 에서의 IoT 디바이스 (200A) 또는 도 2b 에서의 IoT 디바이스 (200B) 와 같은 임의의 IoT 디바이스, 또는 도 8 에서의 온보디 디바이스 (810) 와 같은 임의의 온보디 디바이스일 수도 있다. 도 12 에 나타낸 흐름은 온보딩 프로세스 동안 발생하는 것으로 예시된다. 그러나, 주지하는 바와 같이, 도 12 에 예시된 흐름은 온보딩 프로세스 대신 구성 프로세스 동안 수행될 수 있다.
1230 에서, 최종 사용자 (1225) 는 온보디 디바이스 (1210) 를 그의 최종 로케이션에 위치시킨다. 용어 "최종" 은 온보디 디바이스 (1210) 가 다시 이동될 수 없다는 것을 의미하기 보다는, 그 로케이션이, 온보디 디바이스 (1210) 가 일단 온보드 /구성되면 로케이트되기를 최종 사용자 (1225) 가 원하는 로케이션이라는 것을 나타낸다. 예를 들어, 비디오 프로젝터의 "최종" 로케이션은 특정의 객실의 천장에 설치될 수도 있다.
1235 에서, 최종 사용자 (1225) 는 온보디 디바이스 (1210) 를 그의 최종 로케이션에 위치시킨 후, 온보디 디바이스 (1210) 를 사진 찍는다. 온보디 디바이스 (1210) 의 이미지는 온보디 디바이스 (1210) 가 로케이트되는 환경 중 적어도 일부분을 포함해야 한다. 최종 사용자 (1225) 는 온보더 디바이스 (1220) 상의 카메라 애플리케이션, 또는 다른 디바이스 상의 카메라 애플리케이션을 이용하여 사진을 찍을 수도 있으며, 이 경우, 최종 사용자 (1225) 가 이미지를 온보더 디바이스 (1220) 로 전송한다.
1240 에서, 온보더 디바이스 (1220) 는 도 8 내지 도 11 를 참조하여 위에서 설명된 바와 같이 온보디 디바이스 (1210) 를 온보드한다. 온보더 디바이스 (1220) 는 도 2b 에서의 IoT 디바이스 (200B) 와 같은 IoT 디바이스, 또는 도 8 에서의 온보더 디바이스 (820) 와 같은 임의의 온보더 디바이스일 수도 있다. 예를 들어, 온보더 디바이스 (1220) 는 사용자의 스마트폰, 태블릿 컴퓨터, 랩탑 컴퓨터, 또는 기타 등등일 수도 있다.
1245 에서, 온보더 디바이스 (1220) 는 온보디 디바이스 (1210) 의 이미지를 수신하여 저장한다. 위에서 설명한 바와 같이, 온보더 디바이스 (1220) 는 사용자가 온보더 디바이스 (1220) 상의 카메라 애플리케이션으로 온보디 디바이스 (1210) 를 사진 찍을 때 온보디 디바이스 (1210) 의 이미지를 수신하고 저장할 수도 있다. 대안적으로, 온보더 디바이스 (1220) 는 카메라를 가진 다른 디바이스로부터 이미지를 수신하고 그 이미지를 로컬 메모리에 저장할 수도 있다. 별개의 블록들로서 예시되지만, 블록 (1245) 은 블록 (1240) 의 온보딩 프로세스 동안 수행될 수도 있다.
1250 에서, 온보디 디바이스 (1210) 는 자신의 이미지를 수신하고 저장한다.
이후 어느 시점에, 수평 파선으로 나타낸 바와 같이, 최종 사용자 (1225), 또는 다른 사용자는, 옵션적으로 온보디 디바이스 (1210) 로부터의 관련 정보를 요청한다 (블록 (1255)). 1260 에서, 온보더 디바이스 (1220) 는 옵션적으로 관련 정보에 대한 요청을 온보디 디바이스 (1210) 로 전송한다. 도 12 는 관련 정보에 대한 요청을 전송하는 온보더 디바이스 (1220) 를 예시하지만, 최종 사용자 (1225) 는 온보디 디바이스 (1210) 와 통신할 수 있는 임의의 디바이스를 이용하여 그 요청을 전송할 수도 있다.
1265 에서, 온보디 디바이스 (1210) 는 그 요청을 수신하고 자신의 이미지를 포함한, 관련 정보를 온보더 디바이스 (1220) 로 전송한다. 1270 에서, 온보더 디바이스 (1220) 는 온보디 디바이스 (1210) 의 이미지를 포함한, 관련 정보를 디스플레이한다.
도 12 는 온보더 디바이스 (1220) 가 최종 사용자 (1225) 로부터의 요청에 응답하여 관련 정보 및 이미지를 디스플레이하는 것을 예시하지만, 온보더 디바이스 (1220) 는 대신 온보디 디바이스 (1210) 로부터 경보를 수신 시 관련 정보 및 이미지를 디스플레이할 수도 있다. 이와 같이, 블록들 (1255 및 1260) 은 옵션적이며, 블록 (1265) 에서 전송하는 것은 관련 정보 및 이미지를 포함하는 경보의 전송일 수도 있다.
도 13 은 IoT 디바이스의 이미지로 IoT 디바이스를 식별하는 예시적인 흐름을 예시한다. 도 13 에 예시된 흐름은 도 2a 에서의 IoT 디바이스 (200A) 또는 도 12 에서의 온보더 디바이스 (1220) 와 같은, 이미지를 캡쳐하거나 또는 수신하는 것이 가능한 임의의 사용자 디바이스에 의해 수행될 수도 있다. 1310 에서, 사용자 디바이스는 도 12 의 (1245) 를 참조하여 위에서 설명된 바와 같이, IoT 디바이스의 이미지를 캡쳐한다. 위에서 설명한 바와 같이, IoT 디바이스의 이미지는 IoT 디바이스를 둘러싼 환경 중 적어도 일부분을 포함할 수도 있다. 1320 에서, 사용자 디바이스는 도 12 의 1245 를 참조하여 위에서 설명된 바와 같이, 이미지를 사용자 디바이스로부터 IoT 디바이스로 송신한다. IoT 디바이스는 도 12 의 1250 를 참조하여 위에서 설명된 바와 같이, 그 이미지를 IoT 디바이스를 식별하는 정보와 연관시킬 수도 있다.
도 14 는 IoT 디바이스의 이미지로 IoT 디바이스를 식별하는 예시적인 흐름을 예시한다. 도 14 에 예시된 흐름은 도 2a/2b 에서의 IoT 디바이스 (200A, 200B) 또는 도 12 에서의 온보디 디바이스 (1210) 와 같은, 이미지를 수신하여 저장하는 것이 가능한 임의의 IoT 디바이스에 의해 수행될 수도 있다. 1410 에서, IoT 디바이스는 도 12 의 1250 를 참조하여 위에서 설명된 바와 같이, 도 2a 에서의 IoT 디바이스 (200A) 또는 도 12 에서의 온보더 디바이스 (1220) 와 같은 다른 사용자 디바이스로부터 IoT 디바이스의 이미지를 수신한다. 위에서 설명한 바와 같이, IoT 디바이스의 이미지는 IoT 디바이스를 둘러싼 환경 중 적어도 일부분을 포함할 수도 있다. 1420 에서, IoT 디바이스는 도 12 의 1250 를 참조하여 위에서 설명된 바와 같이, IoT 디바이스의 이미지를 저장한다. 1430 에서, IoT 디바이스는 도 12 의 1250 를 참조하여 위에서 설명된 바와 같이, IoT 디바이스의 이미지를 IoT 디바이스를 식별하는 정보와 연관시킨다.
도 15 는 일련의 상관된 기능 모듈들로서 표시된 예시적인 사용자 디바이스 장치 (1500) 를 예시한다. 캡쳐하는 모듈 (1502) 은 적어도 일부 양태들에서, 예를 들어, 본원에서 설명된 바와 같은 도 2a 에서의 카메라 (210) 또는 송수신기 (206) 와 같은 카메라 또는 송수신기에 대응할 수도 있다. 송신하는 모듈 (1504) 은 적어도, 일부 양태들에서, 예를 들어, 본원에서 설명되는 바와 같은 도 2a 에서의 송수신기 (206) 와 같은, 송수신기에 대응할 수도 있다.
도 16 은 일련의 상관된 기능 모듈들로서 표시된 예시적인 IoT 디바이스 장치 (1600) 를 예시한다. 수신하는 모듈 (1602) 은 적어도, 일부 양태들에서, 예를 들어, 본원에서 설명되는 바와 같은 도 2a/2b 에서의 송수신기 (206) 와 같은, 송수신기에 대응할 수도 있다. 저장하는 모듈 (1604) 은 적어도, 일부 양태들에서, 예를 들어, 본원에서 설명되는 바와 같은 도 2a 에서의 메모리 (212) 와 같은, 메모리에 대응할 수도 있다. 연관시키는 모듈 (1606) 은 적어도, 일부 양태들에서, 예를 들어, 본원에서 설명되는 바와 같은 도 2a 에서의 메모리 (212) 및/또는 프로세서 (208) 와 같은, 메모리 및/또는 프로세서에 대응할 수도 있다.
도 15 및 도 16 의 모듈들의 기능은 본원에서의 교시들에 부합하는 여러 방법들로 구현될 수도 있다. 일부 설계들에서, 이들 모듈들의 기능은 하나 이상의 전기적 구성요소들로서 구현될 수도 있다. 일부 설계들에서, 이들 블록들의 기능은 하나 이상의 프로세서 구성요소들을 포함하는 프로세싱 시스템으로서 구현될 수도 있다. 일부 설계들에서, 이들 모듈들의 기능은 예를 들어, 하나 이상의 집적 회로들 (예컨대, ASIC) 중 적어도 일부분을 이용하여 구현될 수도 있다. 본원에서 설명할 때, 집적 회로는 프로세서, 소프트웨어, 다른 관련된 구성요소들, 또는 이들의 어떤 조합을 포함할 수도 있다. 따라서, 상이한 모듈들의 기능은 예를 들어, 집적 회로의 상이한 서브세트들로서, 소프트웨어 모듈들의 세트의 상이한 서브세트들로서, 또는 이들의 조합으로서 구현될 수도 있다. 또한, (예컨대, 집적 회로의 및/또는 소프트웨어 모듈들의 세트의) 주어진 서브세트가 기능의 적어도 일부분을 하나 보다 많은 모듈에 제공할 수도 있는 것으로 이해될 것이다.
게다가, 도 15 및 도 16 에 의해 표시된 구성요소들 및 기능들 뿐만 아니라, 본원에서 설명하는 다른 구성요소들 및 기능들은, 임의의 적합한 수단을 이용하여 구현될 수도 있다. 이러한 수단은 또한 본원에서 교시된 바와 같은 대응하는 구조를 이용하여, 적어도 부분적으로, 구현될 수도 있다. 예를 들어, 도 15 및 도 16 의 "하는 모듈 (module for)" 구성요소들과 함께 위에서 설명된 구성요소들은 또한 유사하게 지정된 "하는 수단" 기능에 대응할 수도 있다. 따라서, 일부 양태들에서, 이러한 수단 중 하나 이상이 본원에서 교시된 바와 같은 프로세서 구성요소들, 집적 회로들, 또는 다른 적합한 구조 중 하나 이상을 이용하여 구현될 수도 있다.
당업자들은, 정보 및 신호들이 다양한 상이한 기술들 및 기법들 중 어느 것을 이용하여서도 표현될 수도 있다는 것을 알 수 있을 것이다. 예를 들어, 상기 설명 전반에 걸쳐서 인용될 수도 있는 데이터, 명령들, 지령들, 정보, 신호들, 비트들, 심볼들 및 칩들은, 전압들, 전류들, 전자기파들, 자기장들 또는 자기 입자들, 광학장들 또는 광학 입자들, 또는 이들의 임의의 조합으로 표현될 수도 있다.
또, 당업자들은, 본원에서 개시한 양태들과 관련하여 설명되는 여러가지 예시적인 로직 블록들, 모듈들, 회로들, 및 알고리즘 단계들이 전자적 하드웨어, 컴퓨터 소프트웨어, 또는 양쪽의 조합들로서 구현될 수도 있음을 명확히 알 수 있을 것이다. 이러한 하드웨어와 소프트웨어의 상호 교환가능성을 명확히 예시하기 위하여, 이상에서는, 여러 예시적인 구성요소들, 블록들, 모듈들, 회로들 및 단계들을 그들의 기능의 관점에서 일반적으로 설명되었다. 이런 기능이 하드웨어 또는 소프트웨어로 구현되는지 여부는 특정의 애플리케이션 및 전체 시스템에 부과되는 설계 제한 사항들에 의존한다. 숙련자들은 각각의 특정의 애플리케이션 마다 설명한 기능을 여러가지 방법으로 구현할 수도 있으며, 그러나 이러한 구현 결정들은 본 개시물의 범위로부터 일탈하는 것으로 해석되어서는 안된다.
본원에서 개시된 양태들과 관련하여 설명되는 여러가지 예시적인 로직 블록들, 모듈들, 및 회로들은, 범용 프로세서, 디지털 신호 프로세서 (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, 플로피 디스크 및 Blu-ray 디스크를 포함하며, 여기서, 디스크들 (disks) 은 대개 데이터를 레이저로 광학적으로 및/또는 자기적으로 재생한다. 앞에서 언급한 것들의 조합들이 또한 컴퓨터-판독가능 매체들의 범위 내에 포함되어야 한다.
전술한 개시물은 본 개시물의 예시적인 양태들을 나타내지만, 첨부된 청구범위에 의해 정의되는 바와 같은 본 개시물의 범위로부터 일탈함이 없이 본원에서 여러 가지 변화들 및 변경들이 이루어질 수 있다는 점에 유의해야 한다. 본원에서 설명된 본 개시물의 양태들에 따른, 방법 청구항들의 기능들, 단계들 및/또는 액션들은 임의의 특정의 순서로 수행될 필요가 없다. 더욱이, 본 개시물의 엘리먼트들은 단수로 설명되거나 또는 청구될 수도 있지만, 그 단수에의 한정이 명시적으로 언급되지 않는 한, 복수가 고려된다.

Claims (30)

  1. 사물 인터넷 (IoT) 디바이스를 상기 IoT 디바이스의 이미지로 식별하는 방법으로서,
    사용자 디바이스에 의해, 상기 IoT 디바이스의 이미지를 캡쳐하는 단계로서, 상기 IoT 디바이스의 이미지는 상기 IoT 디바이스를 둘러싼 환경 중 적어도 일부분을 포함하는, 상기 캡쳐하는 단계; 및
    상기 IoT 디바이스의 이미지를 상기 사용자 디바이스로부터 상기 IoT 디바이스로 송신하는 단계로서, 상기 IoT 디바이스는 상기 IoT 디바이스의 메모리에 상기 IoT 디바이스의 이미지를 저장하고 상기 IoT 디바이스의 메모리에 저장된 상기 IoT 디바이스의 이미지를 상기 IoT 디바이스의 메모리에 저장된 상기 IoT 디바이스를 식별하는 정보와 연관시키는, 상기 송신하는 단계를 포함하는, 사물 인터넷 (IoT) 디바이스를 IoT 디바이스의 이미지로 식별하는 방법.
  2. 제 1 항에 있어서,
    상기 사용자 디바이스를 상기 IoT 디바이스에 접속하는 단계를 더 포함하며,
    상기 송신하는 단계는 상기 접속하는 것에 응답하여 수행되는, 사물 인터넷 (IoT) 디바이스를 IoT 디바이스의 이미지로 식별하는 방법.
  3. 제 2 항에 있어서,
    상기 접속하는 단계는 상기 IoT 디바이스의 온보딩 프로세스 동안 수행되는, 사물 인터넷 (IoT) 디바이스를 IoT 디바이스의 이미지로 식별하는 방법.
  4. 제 1 항에 있어서,
    상기 IoT 디바이스의 사용자는 상기 사용자 디바이스에게 상기 IoT 디바이스의 온보딩 프로세스 동안 상기 IoT 디바이스의 이미지를 캡쳐하도록 명령하는, 사물 인터넷 (IoT) 디바이스를 IoT 디바이스의 이미지로 식별하는 방법.
  5. 제 1 항에 있어서,
    상기 IoT 디바이스의 사용자는 상기 사용자 디바이스에게 상기 IoT 디바이스의 구성 프로세스 동안 상기 IoT 디바이스의 이미지를 캡쳐하도록 명령하는, 사물 인터넷 (IoT) 디바이스를 IoT 디바이스의 이미지로 식별하는 방법.
  6. 제 1 항에 있어서,
    상기 송신하는 단계는 상기 이미지를 온보더 디바이스를 통해서 상기 IoT 디바이스로 송신하는 단계를 포함하는, 사물 인터넷 (IoT) 디바이스를 IoT 디바이스의 이미지로 식별하는 방법.
  7. 제 1 항에 있어서,
    상기 사용자 디바이스에서, 상기 IoT 디바이스로부터 경보를 수신하는 단계;
    상기 IoT 디바이스로부터 상기 IoT 디바이스의 이미지를 수신하는 단계; 및
    상기 사용자 디바이스에서 상기 이미지를 디스플레이하는 단계를 더 포함하는, 사물 인터넷 (IoT) 디바이스를 IoT 디바이스의 이미지로 식별하는 방법.
  8. 제 7 항에 있어서,
    상기 경보를 수신하는 것에 응답하여 상기 IoT 디바이스의 이미지를 요청하는 단계를 더 포함하는, 사물 인터넷 (IoT) 디바이스를 IoT 디바이스의 이미지로 식별하는 방법.
  9. 제 1 항에 있어서,
    상기 사용자 디바이스에 의해, 상기 IoT 디바이스에 관한 정보에 대한 사용자로부터의 요청을 수신하는 단계; 및
    상기 요청을 상기 IoT 디바이스로 포워딩하는 단계를 더 포함하는, 사물 인터넷 (IoT) 디바이스를 IoT 디바이스의 이미지로 식별하는 방법.
  10. 제 9 항에 있어서,
    상기 IoT 디바이스로부터 상기 IoT 디바이스에 관한 정보 및 상기 IoT 디바이스의 이미지를 수신하는 단계; 및
    상기 IoT 디바이스에 관한 상기 정보 및 상기 이미지를 디스플레이하는 단계를 더 포함하는, 사물 인터넷 (IoT) 디바이스를 IoT 디바이스의 이미지로 식별하는 방법.
  11. 사물 인터넷 (IoT) 디바이스를 상기 IoT 디바이스의 이미지로 식별하는 방법으로서,
    상기 IoT 디바이스에 의해, 사용자 디바이스로부터 상기 IoT 디바이스의 이미지를 수신하는 단계로서, 상기 IoT 디바이스의 이미지는 상기 IoT 디바이스를 둘러싼 환경 중 적어도 일부분을 포함하는, 상기 수신하는 단계;
    상기 IoT 디바이스에 의해, 상기 IoT 디바이스의 메모리에 상기 IoT 디바이스의 이미지를 저장하는 단계; 및
    상기 IoT 디바이스에 의해, 상기 IoT 디바이스의 메모리에 저장된 상기 IoT 디바이스의 이미지를 상기 IoT 디바이스의 메모리에 저장된 상기 IoT 디바이스를 식별하는 정보와 연관시키는 단계를 포함하는, 사물 인터넷 (IoT) 디바이스를 IoT 디바이스의 이미지로 식별하는 방법.
  12. 제 11 항에 있어서,
    상기 IoT 디바이스는 상기 IoT 디바이스의 온보딩 프로세스 동안 상기 IoT 디바이스의 이미지를 수신하는, 사물 인터넷 (IoT) 디바이스를 IoT 디바이스의 이미지로 식별하는 방법.
  13. 제 12 항에 있어서,
    상기 사용자 디바이스는 상기 IoT 디바이스를 온보드하는, 사물 인터넷 (IoT) 디바이스를 IoT 디바이스의 이미지로 식별하는 방법.
  14. 제 11 항에 있어서,
    상기 IoT 디바이스는 상기 IoT 디바이스의 구성 프로세스 동안 상기 IoT 디바이스의 이미지를 수신하는, 사물 인터넷 (IoT) 디바이스를 IoT 디바이스의 이미지로 식별하는 방법.
  15. 제 14 항에 있어서,
    상기 사용자 디바이스는 상기 IoT 디바이스를 구성하는, 사물 인터넷 (IoT) 디바이스를 IoT 디바이스의 이미지로 식별하는 방법.
  16. 제 11 항에 있어서,
    상기 IoT 디바이스에 의해, 상기 사용자 디바이스로 경보를 전송하는 단계; 및
    상기 IoT 디바이스에 의해, 상기 IoT 디바이스의 이미지를 상기 사용자 디바이스로 전송하는 단계를 더 포함하는, 사물 인터넷 (IoT) 디바이스를 IoT 디바이스의 이미지로 식별하는 방법.
  17. 제 11 항에 있어서,
    상기 IoT 디바이스에 의해, 상기 IoT 디바이스에 관한 정보에 대한 상기 사용자 디바이스로부터의 요청을 수신하는 단계; 및
    상기 IoT 디바이스에 의해, 상기 IoT 디바이스에 관한 정보 및 상기 IoT 디바이스의 이미지를 상기 사용자 디바이스로 전송하는 단계를 더 포함하는, 사물 인터넷 (IoT) 디바이스를 IoT 디바이스의 이미지로 식별하는 방법.
  18. 제 11 항에 있어서,
    상기 사용자 디바이스는 스마트폰, 태블릿 컴퓨터, 랩탑 컴퓨터, 개인 휴대정보 단말기 (PDA), 또는 데스크탑 컴퓨터를 포함하는, 사물 인터넷 (IoT) 디바이스를 IoT 디바이스의 이미지로 식별하는 방법.
  19. 제 11 항에 있어서,
    상기 IoT 디바이스는 헤드리스 IoT 디바이스를 포함하는, 사물 인터넷 (IoT) 디바이스를 IoT 디바이스의 이미지로 식별하는 방법.
  20. 사물 인터넷 (IoT) 디바이스를 상기 IoT 디바이스의 이미지로 식별하는 장치로서,
    상기 IoT 디바이스의 이미지를 캡쳐하도록 구성된 사용자 디바이스의 카메라로서, 상기 IoT 디바이스의 이미지는 상기 IoT 디바이스를 둘러싼 환경 중 적어도 일부분을 포함하는, 상기 캡쳐하도록 구성된 사용자 디바이스의 카메라; 및
    상기 IoT 디바이스의 이미지를 상기 사용자 디바이스로부터 상기 IoT 디바이스로 송신하도록 구성된 상기 사용자 디바이스의 트랜시버로서, 상기 IoT 디바이스는 상기 IoT 디바이스의 메모리에 상기 IoT 디바이스의 이미지를 저장하고 상기 IoT 디바이스의 메모리에 저장된 이미지를 상기 IoT 디바이스의 메모리에 저장된 상기 IoT 디바이스를 식별하는 정보와 연관시키는, 상기 송신하도록 구성된 상기 사용자 디바이스의 트랜시버를 포함하는, 사물 인터넷 (IoT) 디바이스를 IoT 디바이스의 이미지로 식별하는 장치.
  21. 제 20 항에 있어서,
    상기 송신하도록 구성된 트랜시버는 상기 이미지를 온보더 디바이스를 통해서 상기 IoT 디바이스로 송신하도록 구성된 트랜시버를 포함하는, 사물 인터넷 (IoT) 디바이스를 IoT 디바이스의 이미지로 식별하는 장치.
  22. 제 20 항에 있어서,
    상기 트랜시버는 또한,
    상기 IoT 디바이스로부터 경보를 수신하고; 그리고
    상기 IoT 디바이스로부터 상기 IoT 디바이스의 이미지를 수신하도록 구성되고,
    상기 장치는, 상기 이미지를 디스플레이하도록 구성된 상기 사용자 디바이스의 사용자 인터페이스를 더 포함하는, 사물 인터넷 (IoT) 디바이스를 IoT 디바이스의 이미지로 식별하는 장치.
  23. 제 20 항에 있어서,
    상기 트랜시버는 또한,
    상기 IoT 디바이스에 관한 정보에 대한 사용자로부터의 요청을 수신하고; 그리고
    상기 요청을 상기 IoT 디바이스로 포워딩하도록 구성되는, 사물 인터넷 (IoT) 디바이스를 IoT 디바이스의 이미지로 식별하는 장치.
  24. 제 23 항에 있어서,
    상기 트랜시버는 또한, 상기 IoT 디바이스로부터 상기 IoT 디바이스에 관한 정보 및 상기 IoT 디바이스의 이미지를 수신하도록 구성되고,
    상기 장치는, 상기 IoT 디바이스에 관한 상기 정보 및 상기 이미지를 디스플레이하도록 구성된 상기 사용자 디바이스의 사용자 인터페이스를 더 포함하는, 사물 인터넷 (IoT) 디바이스를 IoT 디바이스의 이미지로 식별하는 장치.
  25. 사물 인터넷 (IoT) 디바이스를 상기 IoT 디바이스의 이미지로 식별하는 장치로서,
    사용자 디바이스로부터 상기 IoT 디바이스의 이미지를 수신하도록 구성된 상기 IoT 디바이스의 트랜시버로서, 상기 IoT 디바이스의 이미지는 상기 IoT 디바이스를 둘러싼 환경 중 적어도 일부분을 포함하는, 상기 수신하도록 구성된 상기 IoT 디바이스의 트랜시버;
    상기 IoT 디바이스의 이미지를 저장하도록 구성된 상기 IoT 디바이스의 메모리; 및
    상기 IoT 디바이스의 메모리에 저장된 상기 IoT 디바이스의 이미지를 상기 IoT 디바이스의 메모리에 저장된 상기 IoT 디바이스를 식별하는 정보와 연관시키도록 구성된 상기 IoT 디바이스의 적어도 하나의 프로세서를 포함하는, 사물 인터넷 (IoT) 디바이스를 IoT 디바이스의 이미지로 식별하는 장치.
  26. 제 25 항에 있어서,
    상기 트랜시버는 상기 IoT 디바이스의 온보딩 프로세스 동안 상기 IoT 디바이스의 이미지를 수신하는, 사물 인터넷 (IoT) 디바이스를 IoT 디바이스의 이미지로 식별하는 장치.
  27. 제 25 항에 있어서,
    상기 트랜시버는 상기 IoT 디바이스의 구성 프로세스 동안 상기 IoT 디바이스의 이미지를 수신하는, 사물 인터넷 (IoT) 디바이스를 IoT 디바이스의 이미지로 식별하는 장치.
  28. 제 25 항에 있어서,
    상기 트랜시버는 또한,
    상기 사용자 디바이스로 경보를 전송하고; 그리고
    상기 IoT 디바이스의 이미지를 상기 사용자 디바이스로 전송하도록 구성되는, 사물 인터넷 (IoT) 디바이스를 IoT 디바이스의 이미지로 식별하는 장치.
  29. 제 25 항에 있어서,
    상기 트랜시버는 또한,
    상기 IoT 디바이스에 관한 정보에 대한 상기 사용자 디바이스로부터의 요청을 수신하고; 그리고
    상기 IoT 디바이스에 관한 정보 및 상기 IoT 디바이스의 이미지를 상기 사용자 디바이스로 전송하도록 구성되는, 사물 인터넷 (IoT) 디바이스를 IoT 디바이스의 이미지로 식별하는 장치.
  30. 제 25 항에 있어서,
    상기 IoT 디바이스는 헤드리스 IoT 디바이스를 포함하는, 사물 인터넷 (IoT) 디바이스를 IoT 디바이스의 이미지로 식별하는 장치.
KR1020167012697A 2013-11-14 2014-11-13 물리적인 iot 디바이스를 식별하는 방법 및 장치 KR101770083B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201361904338P 2013-11-14 2013-11-14
US61/904,338 2013-11-14
US14/539,302 2014-11-12
US14/539,302 US9628691B2 (en) 2013-11-14 2014-11-12 Method and apparatus for identifying a physical IoT device
PCT/US2014/065556 WO2015073730A1 (en) 2013-11-14 2014-11-13 Method and apparatus for identifying a physical iot device

Publications (2)

Publication Number Publication Date
KR20160086332A KR20160086332A (ko) 2016-07-19
KR101770083B1 true KR101770083B1 (ko) 2017-08-21

Family

ID=53043502

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020167012697A KR101770083B1 (ko) 2013-11-14 2014-11-13 물리적인 iot 디바이스를 식별하는 방법 및 장치

Country Status (7)

Country Link
US (1) US9628691B2 (ko)
EP (1) EP3069479A1 (ko)
JP (1) JP2017503370A (ko)
KR (1) KR101770083B1 (ko)
CN (1) CN105874750A (ko)
BR (1) BR112016010975A2 (ko)
WO (1) WO2015073730A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102246189B1 (ko) 2020-11-16 2021-04-30 한국인터넷진흥원 집단 지성을 이용한 디바이스 식별 방법 및 장치

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9887864B1 (en) * 2014-03-10 2018-02-06 Origin Wireless, Inc. Methods, devices and systems of heterogeneous time-reversal paradigm enabling direct connectivity in internet of things
US9226304B2 (en) * 2014-03-10 2015-12-29 Origin Wireless, Inc. Time-reversal wireless paradigm for internet of things
US9880695B2 (en) 2015-05-01 2018-01-30 International Business Machines Corporation Changing a controlling device interface based on device orientation
US10469464B2 (en) * 2015-06-09 2019-11-05 Intel Corporation Self-configuring key management system for an internet of things network
US9948603B1 (en) * 2015-06-23 2018-04-17 Symantec Corporation System and method of constructing dynamic namespaces in the internet of things
KR20170015622A (ko) * 2015-07-29 2017-02-09 삼성전자주식회사 사용자 단말 장치 및 그 제어 방법
US10069793B2 (en) 2015-08-26 2018-09-04 Tatung Company Identity verification method, internet of thins gateway device, and verification gateway device using the same
KR102446384B1 (ko) 2015-09-18 2022-09-22 삼성전자주식회사 사용자 단말 및 서버 장치
US9967330B2 (en) 2015-12-01 2018-05-08 Dell Products L.P. Virtual resource bank for localized and self determined allocation of resources
EP3179338B1 (en) * 2015-12-11 2021-07-14 Tata Consultancy Services Ltd. Hybrid reality based object interaction and control
US10270875B1 (en) * 2016-09-19 2019-04-23 Amazon Technologies, Inc. Dynamic grouping of device representations
US10887174B2 (en) * 2016-09-19 2021-01-05 Amazon Technologies, Inc. Group command management for device groups
US10270738B1 (en) * 2016-09-19 2019-04-23 Amazon Technologies, Inc. Aggregated group state for a group of device representations
KR20180039821A (ko) * 2016-10-11 2018-04-19 삼성전자주식회사 모니터링 시스템 제어 방법 및 이를 지원하는 전자 장치
KR101881148B1 (ko) 2016-11-24 2018-08-17 동서대학교산학협력단 Fota을 적용한 tr―069 프로토콜 기반의 스마트 홈 디바이스 관리 시스템 및 방법
US10002526B1 (en) * 2016-12-20 2018-06-19 Arrayent, Inc. Internet-of-things systems and methods
DE112017006994T5 (de) 2017-02-05 2019-10-17 Intel Corporation Bereitstellung und verwaltung von microservices
US10756924B2 (en) 2017-04-12 2020-08-25 Denso International America, Inc. System and method for encoding data within a vehicle communication network
CN108809898B (zh) * 2017-04-28 2020-10-20 中兴通讯股份有限公司 一种鉴权方法、终端及服务器
CN110800314B (zh) * 2017-04-28 2022-02-11 株式会社OPTiM 计算机系统、远程操作通知方法以及记录介质
US10447394B2 (en) * 2017-09-15 2019-10-15 Qualcomm Incorporated Connection with remote internet of things (IoT) device based on field of view of camera
US11131973B2 (en) 2017-12-06 2021-09-28 Arris Enterprises Llc System and method of IOT device control using augmented reality
US11041617B2 (en) 2018-04-20 2021-06-22 Signify Holding B.V. Luminaire with an integrated camera
US10993110B2 (en) * 2018-07-13 2021-04-27 Nvidia Corp. Connectionless fast method for configuring Wi-Fi on displayless Wi-Fi IoT device
WO2020022780A1 (en) * 2018-07-25 2020-01-30 Samsung Electronics Co., Ltd. Method and apparatus for establishing device connection
KR20200074732A (ko) * 2018-12-17 2020-06-25 삼성전자주식회사 전자 장치 및 전자 장치의 제어 방법
US11163434B2 (en) * 2019-01-24 2021-11-02 Ademco Inc. Systems and methods for using augmenting reality to control a connected home system
KR102624327B1 (ko) * 2019-03-15 2024-01-15 삼성전자주식회사 IoT 기기의 위치 추론 방법, 이를 지원하는 서버 및 전자 장치
CN110691116B (zh) * 2019-08-18 2023-04-14 朗德万斯公司 用于管理网络设备的方法、定位设备及系统
US11575682B2 (en) * 2019-09-26 2023-02-07 Amazon Technologies, Inc. Assigning contextual identity to a device based on proximity of other devices
JP7338378B2 (ja) * 2019-09-30 2023-09-05 ブラザー工業株式会社 端末装置のためのコンピュータプログラムと端末装置と端末装置によって実行される方法
KR102655602B1 (ko) * 2020-09-16 2024-04-11 (주)노르마 IoT 케어 센서를 이용한 홈 네트워크 시스템
WO2023075425A1 (ko) * 2021-10-27 2023-05-04 삼성전자 주식회사 외부 전자 장치를 제어하는 어플리케이션을 결정하는 전자 장치 및 그 동작 방법
US11930270B2 (en) 2021-10-29 2024-03-12 Snap Inc. Identifying a video camera for an object
US20240106896A1 (en) * 2022-09-23 2024-03-28 T-Mobile Innovations Llc Iot device one tap activation

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100311347A1 (en) 2007-11-28 2010-12-09 Nokia Corporation Wireless device detection
US20100317332A1 (en) 2009-06-12 2010-12-16 Bathiche Steven N Mobile device which automatically determines operating mode

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4045744B2 (ja) * 2001-02-09 2008-02-13 セイコーエプソン株式会社 情報配信システム及び携帯端末
JP4352696B2 (ja) * 2002-12-19 2009-10-28 富士ゼロックス株式会社 ネットワーク対応機器、ネットワーク対応機器における設置位置管理方法
JP2006195700A (ja) * 2005-01-13 2006-07-27 Matsushita Electric Ind Co Ltd 情報端末装置及びそのプログラム
JP4193820B2 (ja) * 2005-07-05 2008-12-10 ブラザー工業株式会社 管理装置、およびプログラム
JP4298731B2 (ja) * 2006-08-28 2009-07-22 キヤノン株式会社 データ処理装置及びデータ処理方法
JP2008134717A (ja) * 2006-11-27 2008-06-12 Matsushita Electric Works Ltd 防犯システム
US8515460B2 (en) * 2007-02-12 2013-08-20 Microsoft Corporation Tagging data utilizing nearby device information
EP1965344B1 (en) 2007-02-27 2017-06-28 Accenture Global Services Limited Remote object recognition
JP2009089020A (ja) * 2007-09-28 2009-04-23 Fujitsu Ltd 通信装置、保守システム、保守方法、及びコンピュータプログラム
WO2010091320A1 (en) 2009-02-06 2010-08-12 Slinker Scott W Determining associative intent in a database containing linked entities
JP2011023877A (ja) * 2009-07-14 2011-02-03 Jvc Kenwood Holdings Inc 放送局特定装置及び地域特定装置
JP5067643B2 (ja) * 2009-10-23 2012-11-07 Necアクセステクニカ株式会社 緊急地震速報端末および位置移動警告方法
CN201830450U (zh) * 2010-06-28 2011-05-11 徐蔚 一种嵌入感动芯引擎的无线传感装置
US9098948B2 (en) 2010-10-22 2015-08-04 Telefonaktiebolaget L M Ericsson (Publ) Image matching apparatus and image matching method
WO2012060887A1 (en) * 2010-11-05 2012-05-10 Mark Cummings Integrated circuit design and operation
JP5594085B2 (ja) * 2010-11-19 2014-09-24 船井電機株式会社 位置情報送信装置、位置情報送信システムおよび位置情報設定方法
US9252966B2 (en) 2010-12-08 2016-02-02 At&T Intellectual Property I, L.P. Method and system for configuring instrumentation devices
CN102520681B (zh) * 2011-11-21 2016-08-03 康佳集团股份有限公司 基于外观信息识别的物联网终端智能配置方法及系统
JP2013120581A (ja) * 2011-12-09 2013-06-17 Kyocera Document Solutions Inc 通信装置、画像形成装置、画像形成システム
CN202503604U (zh) 2011-12-23 2012-10-24 纳讯(青岛)通信有限公司 基于手机物联网的监控装置
JP2013207669A (ja) * 2012-03-29 2013-10-07 Panasonic Corp 測定局の設置情報取得方法及び測定システム
JP6095380B2 (ja) 2013-01-25 2017-03-15 キヤノン株式会社 通信装置、通信装置の制御方法、プログラム
US20140244001A1 (en) 2013-02-25 2014-08-28 Qualcomm Incorporated Controlling many different devices from a smart controller

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100311347A1 (en) 2007-11-28 2010-12-09 Nokia Corporation Wireless device detection
US20100317332A1 (en) 2009-06-12 2010-12-16 Bathiche Steven N Mobile device which automatically determines operating mode

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102246189B1 (ko) 2020-11-16 2021-04-30 한국인터넷진흥원 집단 지성을 이용한 디바이스 식별 방법 및 장치

Also Published As

Publication number Publication date
US9628691B2 (en) 2017-04-18
CN105874750A (zh) 2016-08-17
EP3069479A1 (en) 2016-09-21
JP2017503370A (ja) 2017-01-26
WO2015073730A1 (en) 2015-05-21
KR20160086332A (ko) 2016-07-19
BR112016010975A2 (pt) 2017-10-31
US20150130957A1 (en) 2015-05-14

Similar Documents

Publication Publication Date Title
KR101770083B1 (ko) 물리적인 iot 디바이스를 식별하는 방법 및 장치
US9185641B2 (en) Using discoverable peer-to-peer services to allow remote onboarding of headless devices over a Wi-Fi network
US20150071052A1 (en) Reconfiguring a headless wireless device
US20150026779A1 (en) Performing remote wi-fi network configuration when a network security protocol is unknown
EP3047616B1 (en) A user interactive application enabled gateway
US9954679B2 (en) Using end-user federated login to detect a breach in a key exchange encrypted channel
US20150071216A1 (en) Allowing mass re-onboarding of headless devices
US20150026317A1 (en) Recovering from a failure to connect to a network that was remotely configured on a headless device
JP6622716B2 (ja) ユーザプリファレンスまたはデバイス構成を設定するための方法および装置
US20150023336A1 (en) Communicating a headless onboardee device local wireless network scan to an onboarder device via a peer-to-peer protocol to assist an onboarding process
JP6453338B2 (ja) データのインテリジェント同期による省電力化の向上
WO2016070106A1 (en) Dynamic mobile ad hoc internet of things (iot) gateway
JP2017531357A (ja) モノのインターネット(IoT)ネットワークにおいてイベント辞書を自動的に生成するための方法および装置
EP3167589A1 (en) Method and apparatus for incrementally sharing greater amounts of information between user devices
EP3152882B1 (en) Determining trust levels on a device receiving authorization
US20160119403A1 (en) Modification-time ordering in distributed computing systems

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right