KR102366632B1 - 사용자 선호도들 또는 디바이스 구성을 설정하는 방법 및 장치 - Google Patents
사용자 선호도들 또는 디바이스 구성을 설정하는 방법 및 장치 Download PDFInfo
- Publication number
- KR102366632B1 KR102366632B1 KR1020167033810A KR20167033810A KR102366632B1 KR 102366632 B1 KR102366632 B1 KR 102366632B1 KR 1020167033810 A KR1020167033810 A KR 1020167033810A KR 20167033810 A KR20167033810 A KR 20167033810A KR 102366632 B1 KR102366632 B1 KR 102366632B1
- Authority
- KR
- South Korea
- Prior art keywords
- user device
- configuration information
- user
- information
- preference
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06315—Needs-based resource requirements planning or analysis
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/02—Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
- H04W84/10—Small scale networks; Flat hierarchical networks
- H04W84/12—WLAN [Wireless Local Area Networks]
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- Entrepreneurship & Innovation (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Operations Research (AREA)
- General Physics & Mathematics (AREA)
- Game Theory and Decision Science (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Marketing (AREA)
- Theoretical Computer Science (AREA)
- Educational Administration (AREA)
- Development Economics (AREA)
- Telephonic Communication Services (AREA)
- Selective Calling Equipment (AREA)
- Mobile Radio Communication Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
사용자 선호도들 및/또는 디바이스 구성 정보를 설정하는 방법 및 장치가 개시된다. 제 1 사용자 디바이스는 로컬 무선 네트워크를 검출하고, 제 2 사용자 디바이스로부터, 제 1 사용자 디바이스와 유사한 기능을 갖는 제 2 사용자 디바이스의 구성 정보 및/또는 선호도 정보를 수신하며, 적어도 제 2 사용자 디바이스로부터 수신된 구성 정보 및/또는 선호도 정보의 서브세트로 제 1 사용자 디바이스의 구성 정보 및/또는 선호도 정보를 업데이트하고, 상기 제 1 사용자 디바이스의 구성 정보 및/또는 선호도 정보는 제 1 사용자 디바이스에 저장된다.
Description
본 특허 출원은 2014년 5월 2일자에 출원되고, 그 양수인에게 양도되어 있으며, 그 전체가 참조에 의해 본원에 명확하게 포함되는 발명의 명칭이 "USER PREFERENCE SERVICE" 인 미국 가출원 제 61/987,816 호의 이익을 주장한다.
본 개시는 사용자 선호도 서비스에 관련된다.
인터넷은 표준 인터넷 프로토콜 슈트 (예를 들어, 송신 제어 프로토콜 (Transmission Control Protocol; TCP) 및 인터넷 프로토콜 (Internet Protocol; IP)) 를 사용하여 서로 통신하는 상호접속된 컴퓨터들 및 컴퓨터 네트워크들의 글로벌 시스템이다. 사물 인터넷 (IoT) 은 컴퓨터들 및 컴퓨터 네트워크들 뿐만 아니라 일상의 객체들이 IoT 통신 네트워크 (예를 들어, 애드-혹 시스템 또는 인터넷) 를 통해 판독 가능, 인식 가능, 로케이트 가능, 어드레싱 가능, 및 제어 가능해질 수 있다는 아이디어에 기초한다.
다수의 시장 트렌드들은 IoT 디바이스들의 개발을 추진하고 있다. 예를 들어, 증가하는 에너지 비용들은 스마트 그리드들에서의 정부의 전략적 투자들 및 미래의 소비, 예컨대 전기 차량들 및 공공 충전소에 대한 지원을 추진하고 있다. 증가하는 헬스 케어 비용들 및 노령 인구들은 원격/접속된 헬스 케어 및 피트니스 서비스들에 대한 개발을 추진하고 있다. 홈에서의 기술적 혁명은, 'N' 플레이 (예를 들어, 데이터, 음성, 비디오, 보안, 에너지 관리 등) 를 마켓팅하고 홈 네트워크를 확장하는 서비스 제공자들에 의한 통합을 포함하는, 새로운 "스마트" 서비스들에 대한 개발을 추진하고 있다. 빌딩들은 엔터프라이즈 시설들에 대한 운영 비용들을 감소시키기 위한 수단으로서 보다 스마트하고 보다 편리해지고 있다.
IoT 에 대한 다수의 주요 애플리케이션들이 존재한다. 예를 들어, 스마트 그리드들 및 에너지 관리의 영역에서, 공익 기업들은 가정들 및 사업장들로의 에너지 전달을 최적화할 수 있으면서 소비자들은 에너지 사용을 더 잘 관리할 수 있다. 가정 및 빌딩 자동화의 영역에서, 스마트 홈들 및 빌딩들은, 어플라이언스들에서부터 플러그-인 전기 차량 (PEV) 보안 시스템들까지, 홈 또는 오피스에서 가상으로 임의의 디바이스 또는 시스템을 통해 집중된 제어를 가질 수 있다. 자산 추적의 분야에서, 엔터프라이즈, 병원, 공장, 및 다른 큰 조직체들은 고가 장비, 환자, 차량 등의 로케이션들을 정확하게 추적할 수 있다. 건강 및 웰니스의 영역에서, 의사들은 환자들의 건강을 원격으로 모니터링할 수 있으면서 사람들은 피트니스 루틴들의 진행을 추적할 수 있다.
이에 따라, 가까운 미래에, IoT 기술들에서의 증가하는 개발은 가정에서, 차량들에서, 직장에서, 및 다수의 다른 장소들에서 사용자를 둘러싸는 다수의 IoT 디바이스들을 야기할 것이다. 점점더 많은 디바이스들이 네트워크-인식하게 되어감에 따라, 디바이스들을 구성하는 것과 관련된 문제들은 따라서 더욱 예민하게 될 것이다. 하나의 문제는 디바이스들을 업그레이드하고 구 디바이스로부터 신 디바이스로 엔드 유저의 개인적 선호도들의 세트를 전송할 때 심리스 (seamless) 경험을 생성하는 것이다. 예를 들어, 사용자는 방안의 사람에게 뷰잉 경험들을 맞출 수 있는 새로운 스마트 TV 를 구매할 수도 있다. 사용자가 처음에 구 스마트 TV 를 구매했을 때, 사용자는 예를 들어 사용자가 어떤 타입들의 쇼들 및 영화들을 보기를 좋아하는지의 사용자의 선호도들로 그것을 프로그래밍해야 했다. 스마트 TV 는 또한 시간이 경과함에 따라 사용자의 이들 또는 다른 선호도들을 학습했을 수도 있다. 사용자가 새로운 스마트 TV 를 설치하는 경우, 그러나, 사용자는 그의 또는 그녀의 개인적 선호도들을 다시 재프로그래밍해야 할 것이고, 및/또는 스마트 TV 는 이들 선호도들을 다시 학습해야 할 것이다.
다음은 사용자 선호도들 및/또는 디바이스 구성 정보를 설정하기 위한, 본원에 개시된 하나 이상의 양태들 및/또는 실시형태들에 관련된 간략화된 요약을 나타낸다. 이와 같이, 다음의 요약은 모든 고려되는 양태들 및/또는 실시형태들의 광범위한 개요가 아니며, 모든 양태들 및/또는 실시형태들에 관련된 주요한 또는 중요한 엘리먼트들을 식별하는 것으로 간주된 것도 아니고 임의의 특정 양태 및/또는 실시형태들과 연관된 범위를 기술하는 것으로 간주된 것도 아니다. 따라서, 다음의 요약은 이하에 제시된 상세한 설명을 선행하도록 간략화된 형태로 본원에 개시된 메커니즘들에 관련된 하나 이상의 양태들 및/또는 실시형태들에 관련된 소정 개념들을 나타내기 위한 목적 만을 갖는다.
사용자 선호도들 및/또는 디바이스 구성 정보를 설정하는 방법은 제 1 사용자 디바이스에 의해, 로컬 무선 네트워크를 검출하는 단계; 제 2 사용자 디바이스로부터, 제 1 사용자 디바이스와 유사한 기능을 갖는 제 2 사용자 디바이스의 구성 정보 및/또는 선호도 정보를 수신하는 단계; 및 적어도 제 2 사용자 디바이스로부터 수신된 구성 정보 및/또는 선호도 정보의 서브세트로 제 1 사용자 디바이스의 구성 정보 및/또는 선호도 정보를 업데이트하는 단계를 포함하고, 상기 제 1 사용자 디바이스의 구성 정보 및/또는 선호도 정보는 제 1 사용자 디바이스에 저장된다.
사용자 선호도들 및/또는 디바이스 구성 정보를 설정하는 장치는 제 1 사용자 디바이스에서, 로컬 무선 네트워크를 검출하고, 제 2 사용자 디바이스로부터, 제 1 사용자 디바이스와 유사한 기능을 갖는 제 2 사용자 디바이스의 구성 정보 및/또는 선호도 정보를 수신하도록 구성된 트랜시버; 및 적어도 제 2 사용자 디바이스로부터 수신된 구성 정보 및/또는 선호도 정보의 서브세트로 제 1 사용자 디바이스의 구성 정보 및/또는 선호도 정보를 업데이트하도록 구성된 프로세서를 포함하고, 상기 제 1 사용자 디바이스의 구성 정보 및/또는 선호도 정보는 제 1 사용자 디바이스에 저장된다.
사용자 선호도들 및/또는 디바이스 구성 정보를 설정하는 장치는 제 1 사용자 디바이스에 의해, 로컬 무선 네트워크를 검출하는 수단; 제 2 사용자 디바이스로부터, 제 1 사용자 디바이스와 유사한 기능을 갖는 제 2 사용자 디바이스의 구성 정보 및/또는 선호도 정보를 수신하는 수단; 및 적어도 제 2 사용자 디바이스로부터 수신된 구성 정보 및/또는 선호도 정보의 서브세트로 제 1 사용자 디바이스의 구성 정보 및/또는 선호도 정보를 업데이트하는 수단을 포함하고, 상기 제 1 사용자 디바이스의 구성 정보 및/또는 선호도 정보는 제 1 사용자 디바이스에 저장된다.
사용자 선호도들 및/또는 디바이스 구성 정보를 설정하기 위한 비일시적 컴퓨터 판독가능 매체는 제 1 사용자 디바이스에 의해, 로컬 무선 네트워크를 검출하기 위한 적어도 하나의 명령; 제 2 사용자 디바이스로부터, 제 1 사용자 디바이스와 유사한 기능을 갖는 제 2 사용자 디바이스의 구성 정보 및/또는 선호도 정보를 수신하기 위한 적어도 하나의 명령; 및 적어도 제 2 사용자 디바이스로부터 수신된 구성 정보 및/또는 선호도 정보의 서브세트로 제 1 사용자 디바이스의 구성 정보 및/또는 선호도 정보를 업데이트하기 위한 적어도 하나의 명령을 포함하고, 상기 제 1 사용자 디바이스의 구성 정보 및/또는 선호도 정보는 제 1 사용자 디바이스에 저장된다.
본원에 개시된 양태들 및 실시형태들과 연관된 다른 목적들 및 이점들은 첨부한 도면들 및 상세한 설명에 기초하여 당업자에게 명백해질 것이다.
본 개시물의 양태들에 대한 더 완전한 이해 및 그 많은 부수적인 이점들은, 본 개시물의 제한이 아닌 예시를 위해서만 제시되는 첨부 도면들과 관련되어 고려될 때, 다음의 상세한 설명을 참조함으로써 더 잘 이해되는 바처럼 용이하게 획득될 것이다.
도 1a 는 본 개시물의 일 양태에 따른 무선 통신 시스템의 하이 레벨 시스템 아키텍처를 예시한다.
도 1b 는 본 개시물의 다른 양태에 따른 무선 통신 시스템의 하이 레벨 시스템 아키텍처를 예시한다.
도 1c 는 본 개시물의 일 양태에 따른 무선 통신 시스템의 하이 레벨 시스템 아키텍처를 예시한다.
도 1d 는 본 개시물의 일 양태에 따른 무선 통신 시스템의 하이 레벨 시스템 아키텍처를 예시한다.
도 1e 는 본 개시물의 일 양태에 따른 무선 통신 시스템의 하이 레벨 시스템 아키텍처를 예시한다.
도 2a 는 본 개시물의 양태들에 따른 예시적인 사물 인터넷 (IoT) 디바이스를 예시하는 한편, 도 2b 는 본 개시물의 양태들에 따른 예시적인 패시브 IoT 디바이스를 예시한다.
도 3 은 본 개시물의 일 양태에 따른 기능을 수행하도록 구성된 로직을 포함하는 통신 디바이스를 예시한다.
도 4 는 본 개시물의 다양한 양태들에 따른 예시적인 서버를 예시한다.
도 5 는 본 개시물의 하나의 양태에 따른, 발견가능한 피어-투-피어 (P2P) 서비스들을 지원할 수도 있는 무선 통신 네트워크를 도시한다.
도 6 은 본 개시물의 하나의 양태에 따라, 여러 디바이스들이 그것을 통해 통신할 수도 있는 근접도-기반 분포된 버스를 확립하기 위해 발견가능한 P2P 서비스들이 사용될 수도 있는 예시적인 환경을 도시한다.
도 7 은 본 개시물의 하나의 양태에 따라, 여러 디바이스들이 그것을 통해 통신할 수도 있는 근접도-기반 분포된 버스를 확립하기 위해 발견가능한 P2P 서비스들이 사용될 수도 있는 예시적인 메시지 시퀀스를 도시한다.
도 8a 내지 도 8c 는 동작 중에 있는 사용자 선호도 서비스의 여러 예들을 도시한다.
도 9 는 제 1 사용자 디바이스의 사용자 선호도 정보 및/또는 디바이스 구성 정보를 설정하기 위한 예시적인 플로우를 도시한다.
도 10 내지 도 11 은 여기에서 교시된 바와 같이 통신을 지원하도록 구성된 장치들의 몇가지 샘플 양태들의 다른 단순화된 블록도들이다.
도 1a 는 본 개시물의 일 양태에 따른 무선 통신 시스템의 하이 레벨 시스템 아키텍처를 예시한다.
도 1b 는 본 개시물의 다른 양태에 따른 무선 통신 시스템의 하이 레벨 시스템 아키텍처를 예시한다.
도 1c 는 본 개시물의 일 양태에 따른 무선 통신 시스템의 하이 레벨 시스템 아키텍처를 예시한다.
도 1d 는 본 개시물의 일 양태에 따른 무선 통신 시스템의 하이 레벨 시스템 아키텍처를 예시한다.
도 1e 는 본 개시물의 일 양태에 따른 무선 통신 시스템의 하이 레벨 시스템 아키텍처를 예시한다.
도 2a 는 본 개시물의 양태들에 따른 예시적인 사물 인터넷 (IoT) 디바이스를 예시하는 한편, 도 2b 는 본 개시물의 양태들에 따른 예시적인 패시브 IoT 디바이스를 예시한다.
도 3 은 본 개시물의 일 양태에 따른 기능을 수행하도록 구성된 로직을 포함하는 통신 디바이스를 예시한다.
도 4 는 본 개시물의 다양한 양태들에 따른 예시적인 서버를 예시한다.
도 5 는 본 개시물의 하나의 양태에 따른, 발견가능한 피어-투-피어 (P2P) 서비스들을 지원할 수도 있는 무선 통신 네트워크를 도시한다.
도 6 은 본 개시물의 하나의 양태에 따라, 여러 디바이스들이 그것을 통해 통신할 수도 있는 근접도-기반 분포된 버스를 확립하기 위해 발견가능한 P2P 서비스들이 사용될 수도 있는 예시적인 환경을 도시한다.
도 7 은 본 개시물의 하나의 양태에 따라, 여러 디바이스들이 그것을 통해 통신할 수도 있는 근접도-기반 분포된 버스를 확립하기 위해 발견가능한 P2P 서비스들이 사용될 수도 있는 예시적인 메시지 시퀀스를 도시한다.
도 8a 내지 도 8c 는 동작 중에 있는 사용자 선호도 서비스의 여러 예들을 도시한다.
도 9 는 제 1 사용자 디바이스의 사용자 선호도 정보 및/또는 디바이스 구성 정보를 설정하기 위한 예시적인 플로우를 도시한다.
도 10 내지 도 11 은 여기에서 교시된 바와 같이 통신을 지원하도록 구성된 장치들의 몇가지 샘플 양태들의 다른 단순화된 블록도들이다.
사용자 선호도들 및/또는 디바이스 구성 정보를 설정하는 방법들 및 장치들이 개시된다. 제 1 사용자 디바이스는 로컬 무선 네트워크를 검출하고, 제 2 사용자 디바이스로부터, 제 1 사용자 디바이스와 유사한 기능을 갖는 제 2 사용자 디바이스의 구성 정보 및/또는 선호도 정보를 수신하며, 적어도 제 2 사용자 디바이스로부터 수신된 구성 정보 및/또는 선호도 정보의 서브세트로 제 1 사용자 디바이스의 구성 정보 및/또는 선호도 정보를 업데이트하고, 상기 제 1 사용자 디바이스의 구성 정보 및/또는 선호도 정보는 제 1 사용자 디바이스에 저장된다.
이들 및 다른 양태들은 예시적인 실시형태들에 관련된 특정 예들을 나타내기 위해 다음의 설명 및 관련 도면들에 개시된다. 대안의 실시형태들은 본 개시물을 판독할 때 당업자에게 명백할 것이고, 본 개시물의 범위 또는 사상으로부터 벗어남 없이 구성 및 실시될 수도 있다. 부가적으로, 잘-알려진 엘리먼트들은 본원에 개시된 양태들 및 실시형태들의 관련 상세들을 모호하게 하지 않기 위해서 상세히 설명되지 않을 것이고 또는 생략될 수도 있다.
단어 "예시적인"은 본원에서 "예, 경우, 또는 예시로서 역할을 하는" 것을 의미하기 위해 사용된다. 본원에서 "예시적인"으로서 설명된 임의의 실시형태는 반드시 다른 실시형태들에 비해 바람직하거나 또는 유리한 것으로서 해석될 필요는 없다. 마찬가지로, 용어 "실시형태들" 은 모든 실시형태들이 논의된 특성, 이점, 또는 동작의 모드를 포함하는 것을 요구하지 않는다.
본원에 사용된 전문용어는 특정한 실시형태들 만을 설명하며 본원에 개시된 임의의 실시형태들에 제한하도록 구성되지 않아야 한다. 본원에서 사용된 바와 같이, 단수 형태들 "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) 에 관련하여 위에서 이미 제공되었다는 결과로 본원에서 생략될 수도 있다.
도 1c 에 도시된 통신 시스템 (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) 와 연관된 센서들, 액츄에이터들, 중계기들, 밸브들, 스위치들 등과 같은 임의의 다른 디바이스들과 통신하고 이들로부터 제어하는 것을 허용하도록 구성될 수 있다. 플랫폼 (202) 은 또한 메모리 (212) 에 저장되거나 프로세서 (208) 에 의해 실행가능할 수도 있거나, 프로세서 (208) 에 커플링되거나 프로세서 (208) 로 통합된 하드웨어일 수도 있는 선호도/구성 모듈 (216) 을 포함할 수도 있다.
이에 따라, 본 개시물의 양태는 본원에 설명된 기능들을 수행하기 위한 능력을 포함하는 IoT 디바이스 (예를 들어, IoT 디바이스 (200A)) 를 포함할 수 있다. 당업자들이 인식하는 바와 같이, 다양한 로직 엘리먼트들은 본원에 개시된 기능을 달성하기 위해 프로세서 (예를 들어, 프로세서 (208)) 또는 소프트웨어 및 하드웨어의 임의의 조합에서 실행된 별개의 엘리먼트들, 소프트웨어 모듈들에서 구현될 수 있다. 예를 들어, 트랜시버 (206), 프로세서 (208), 메모리 (212), I/O 인터페이스 (214), 및/또는 선호도/구성 모듈 (216) 은 모두 협력하여, 본원에 개시된 다양한 기능들을 로딩, 저장 및 실행시키도록 사용될 수도 있고, 따라서 이들 기능들을 수행하기 위한 로직은 다양한 엘리먼트들에 걸쳐 분배될 수도 있다. 대안으로, 기능은 선호도/구성 모듈 (216) 과 같은 하나의 별개의 컴포넌트에 통합될 수 있다. 따라서, 도 2a 에서 IoT 디바이스 (200A) 의 피처들은 단지 예시적인 것으로 간주되고 본 개시물은 예시된 피처들 또는 어레인지먼트에 제한되지 않는다.
예를 들어, IoT 디바이스 (200A) 가 여기에 기술된 바와 같이 사용자 선호도들 및/또는 디바이스 구성 정보를 설정하도록 구성되는 경우, 트랜시버 (206) 가 로컬 무선 네트워크를 검출한 때에, 선호도/구성 모듈 (216) (선호도/구성 모듈 (216) 이 메모리 (212) 에 저장된 실행가능 모듈인 경우 프로세서 (208) 와 결합하여) 은 (트랜시버 (206) 를 통해) 제 2 사용자 디바이스로부터 IoT 디바이스 (200A) 와 유사한 기능을 갖는 제 2 사용자 디바이스의 구성 정보 및/또는 선호도 정보를 수신하고; 및 적어도 제 2 사용자 디바이스로부터 수신된 구성 정보 및/또는 선호도 정보의 서브세트로 IoT 디바이스 (200A) 의 구성 정보 및/또는 선호도 정보를 업데이트하도록 구성될 수도 있고, IoT 디바이스 UE (200A) 의 구성 정보 및/또는 선호도 정보는 IoT 디바이스 (200A) 에, 예를 들어, 메모리 (212) 에 저장된다.
도 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 네트워크 내에서 관측, 모니터링, 제어, 또는 다르게는 관리될 수도 있다.
또한, 패시브 IoT 디바이스 (200B) 에서 이용가능한 프로세싱의 레벨에 따라, 패시브 IoT 디바이스 (200B) 는 선택적으로 선호도/구성 모듈 (216) 을 포함할 수도 있다. 선호도/구성 모듈 (216) 은 전력이 공급되는 경우 여기에 기술된 기능을 수행하도록 구성되는 스탠드얼론 회로일 수도 있다. 예를 들어, 선호도/구성 모듈 (216) 은 에너지가 공급되는 경우 (트랜시버 (206) 를 통해) 제 2 사용자 디바이스로부터 제 2 사용자 디바이스의 구성 정보 및/또는 선호도 정보를 수신하고; 적어도 제 2 사용자 디바이스로부터 수신된 구성 정보 및/또는 선호도 정보의 서브세트로 UE (200B) 의 구성 정보 및/또는 선호도 정보를 업데이트하는 RFID 태그상에 구현될 수도 있다.
도 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) 은 일 예에서 이더넷 프로토콜을 통해 다른 통신 엔티티들에 네트워크-기반 서버를 접속시키는 이더넷 카드에 대응할 수 있다. 추가의 예에서, 정보를 수신 및/또는 송신하도록 구성된 로직 (305) 은 센서류 또는 측정 하드웨어를 포함할 수 있고, 이에 의해 통신 디바이스 (300) 는 그 로컬 환경 (예를 들어, 가속도계, 온도 센서, 광센서, 로컬 RF 신호들을 모니터링하기 위한 안테나 등) 을 모니터링할 수 있다. 또한, 정보를 수신 및/또는 송신하도록 구성된 로직 (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) 은 그 기능을 달성하기 위한 하드웨어에 적어도 부분적으로 의존한다.
통신 디바이스 (300) 가 여기에 기술된 바와 같이 사용자 선호도들 및/또는 디바이스 구성 정보를 설정하도록 구성되는 경우, 정보를 수신 및/또는 송신하도록 구성된 로직 (305) 은 로컬 무선 네트워크를 검출하고, 제 2 사용자 디바이스로부터, 통신 디바이스 (300) 와 유사한 기능을 갖는 제 2 사용자 디바이스의 구성 정보 및/또는 선호도 정보를 수신하도록 구성될 수도 있다. 정보를 프로세싱하도록 구성된 로직 (310) 은 적어도 제 2 사용자 디바이스로부터 수신된 구성 정보 및/또는 선호도 정보의 서브세트로 통신 디바이스 (300) 의 구성 정보 및/또는 선호도 정보를 업데이트하도록 구성될 수도 있다. 정보를 저장하도록 구성된 로직 (310) 은 통신 디바이스 (300) 의 구성 정보 및/또는 선호도 정보를 저장하도록 구성될 수도 있다.
도 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) "~하도록 구성된 로직"은 하드웨어에 의해 적어도 부분적으로 구현되는 양태를 인보크하도록 의도되며, 하드웨어에 독립적인 소프트웨어 전용 구현들로 맵핑하도록 의도된 것은 아니다. 또한, 다양한 블록들에서 "~하도록 구성된 로직" 또는 구성된 로직은 특정의 로직 게이트들 또는 엘리먼트들에 제한되지 않고, 일반적으로 (하드웨어 또는 하드웨어와 소프트웨어의 조합을 통해) 본원에 설명된 기능을 수행하기 위한 능력을 지칭하는 것으로 인식될 것이다. 따라서, 각종 블록들에서 예시된 바와 같은 구성된 로직들 또는 "~하도록 구성된 로직" 은 단어 "로직" 을 공유함에도 불구하고 로직 게이트들 또는 로직 엘리먼트들로서 반드시 구현될 필요는 없다. 각종 블록들에서 로직 간의 다른 상호작용들 또는 협력은 이하에서 더 상세히 설명된 양태들의 리뷰로부터 당업자에게 더 명백해질 것이다.
다양한 실시형태들은 도 4 에 도시된 서버 (400) 와 같은 다양한 상업적으로 이용가능한 서버 디바이스들 중 임의의 것 상에서 구현될 수도 있다. 일 예에서, 서버 (400) 는 상술된 슈퍼바이저 디바이스 (130) 또는 IoT 서버 (170) 의 하나의 예시의 구성에 대응할 수도 있다. 도 4 에서, 서버 (400) 는 디스크 드라이브 (403) 와 같은 대용량 비휘발성 메모리 및 휘발성 메모리 (402) 에 커플링된 프로세서 (401) 를 포함한다. 서버 (400) 는 또한, 플로피 디스크 드라이브, 콤팩트 디스크 (CD) 또는 프로세서 (401) 에 커플링된 DVD 디스크 드라이브 (406) 를 포함할 수도 있다. 서버 (400) 는 또한, 예컨대, 다른 브로드캐스트 시스템 컴퓨터들 및 서버들에 또는 인터넷에 커플링된 로컬 영역 네트워크와 같은 네트워크 (407) 와 데이터 접속을 확립하는 프로세서 (401) 에 커플링된 네트워크 액세스 포트들 (404) 을 포함할 수도 있다. 도 3 의 맥락에서, 도 4 의 서버 (400) 는 통신 디바이스 (300) 의 하나의 구현예를 예시하고, 이에 의해 정보를 송신 및/또는 수신하도록 구성된 로직 (305) 은 네트워크 (407) 와 통신하기 위해 서버 (400) 에 의해 사용된 네트워크 액세스 포인트 (404) 에 대응하고, 정보를 프로세싱하도록 구성된 로직 (310) 은 프로세서 (401) 에 대응하며, 정보를 저장하도록 구성된 로직 (315) 은 휘발성 메모리 (402), 디스크 (disk) 드라이브 (403), 및/또는 디스크 (disc) 드라이브 (406) 의 임의의 조합에 대응한다는 것이 인식될 것이다. 정보를 제시하도록 구성된 선택적 로직 (320) 및 로컬 사용자 입력을 수신하도록 구성된 선택적 로직 (325) 은 도 4 에서 명백히 도시되지 않고, 거기에 포함되거나 포함되지 않을 수도 있다. 따라서, 도 4 는 통신 디바이스 (300) 가 도 2a 에서와 같은 IoT 디바이스 구현에 추가하여 서버로서 구현될 수도 있다는 것을 설명하도록 돕는다.
도 4 를 참조하면, 서버 (400) 는, 여기서 논의된 바와 같이, 제 1 사용자 디바이스가 사용자 선호도들 및/또는 디바이스 구성 정보를 설정하는 것을 용이하게 하도록 구성될 수도 있다. 그러한 실시형태에서, 서버 (400) 는 예를 들어 메모리 (403) 에 저장될 수도 있고, 프로세서 (401) 에 의해 실행가능하거나, 프로세서 (401) 에 커플링되거나 프로세서 (401) 에 통합된 하드웨어 컴포넌트일 수도 있는 선호도/구성 모듈 (416) 을 포함할 수도 있다. 동작 시, 서버 (400) 가 제 1 사용자 디바이스가 로컬 무선 네트워크에 조인했다는 것을 검출한 때에, 서버 (400) (구체적으로는 프로세서 (401) 및 네트워크 액세스 포트들 (404) 과 결합하여 선호도/구성 모듈 (416)) 는 제 1 사용자 디바이스로 제 2 사용자 디바이스의 구성 정보 및/또는 선호도 정보를 전송할 수도 있으며, 제 2 사용자 디바이스는 제 1 사용자 디바이스와 유사한 기능을 갖는다. 제 1 사용자 디바이스는 그 후 적어도 제 2 사용자 디바이스로부터 수신된 구성 정보 및/또는 선호도 정보의 서브세트로 제 1 사용자 디바이스의 구성 정보 및/또는 선호도 정보를 업데이트할 수도 있다. 제 1 사용자 디바이스 및 제 2 사용자 디바이스의 구성 정보 및/또는 선호도 정보는 서버 (400) 및 제 1 사용자 디바이스 양자 모두에 저장될 수도 있다.
일반적으로, 전화들, 태블릿 컴퓨터들, 랩톱 및 데스크톱 컴퓨터들, 소정의 차량들 등과 같은 사용자 장비 (UE) 는 로컬로 (예를 들어, 블루투스, 로컬 Wi-Fi 등) 또는 원격으로 (예를 들어, 셀룰러 네트워크들을 통해, 인터넷을 통해, 등) 서로와 연결되도록 구성될 수 있다. 더욱이, 소정의 UE 들은 또한 디바이스들이 서로와 직접 통신하기 위해 일-대-일 연결을 행하거나 수개의 디바이스들을 포함하는 그룹에 동시에 연결하는 것을 가능하게 하는 소정의 무선 네트워킹 기술들 (예를 들어, Wi-Fi, 블루투스, 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) 의 전체 커버리지 영역은 다수의 (예를 들어, 세개의) 더 작은 영역들로 파티셔닝될 수도 있고, 여기서 각각의 더 작은 영역은 각각의 기지국 (510) 에 의해 서빙될 수도 있다. 3GPP 에서, 용어 "셀" 은 그 용어가 사용되는 콘텍스트에 따라 이러한 커버리지 영역을 서빙하는 기지국 (510) 및/또는 기지국 서브시스템 (510) 의 커버리지 영역을 지칭할 수 있다. 3GPP2 에서, 용어 "섹터" 또는 "셀-섹터" 는 이러한 커버리지 영역을 서빙하는 기지국 (510) 및/또는 기지국 서브시스템 (510) 의 커버리지 영역을 지칭할 수 있다. 명확성을 위해, "셀" 의 3GPP 개념이 여기의 설명에서 사용될 수도 있다.
기지국 (510) 은 매크로 셀, 피코 셀, 펨토 셀, 및/또는 다른 셀 타입들에 대한 통신 커버리지를 제공할 수도 있다. 매크로 셀은 상대적으로 큰 지리적 영역 (예를 들어, 수 킬로미터 반경) 을 커버할 수도 있고, 서비스 가입을 갖는 디바이스들 (520) 에 의한 제한되지 않은 액세스를 허용할 수도 있다. 피코 셀은 상대적으로 작은 지리적 영역을 커버할 수도 있고, 서비스 가입을 갖는 디바이스들 (520) 에 의한 제한되지 않은 액세스를 허용할 수도 있다. 펨토 셀은 상대적으로 작은 지리적 영역 (예를 들어, 홈) 을 커버할 수도 있고, 그 펨토 셀과의 연관을 갖는 디바이스들 (520) (예를 들어, 폐쇄 가입자 그룹 (CSG) 내의 디바이스들 (520)) 에 의한 제한된 액세스를 허용할 수도 있다. 도 5 에 도시된 예에서, 무선 통신 네트워크 (500) 는 매크로 셀들을 위해 매크로 기지국들 (510a, 510b 및 510c) 을 포함한다. 무선 통신 네트워크 (500) 는 또한 피코 셀들을 위해 피코 기지국들 (510) 및/또는 펨토 셀들을 위해 홈 기지국들 (510) 을 포함할 수도 있다 (도 5 에 도시되지 않음).
네트워크 제어기 (530) 는 기지국들 (510) 의 세트에 커플링될 수도 있고, 이들 기지국들 (510) 에 대한 조정 및 제어를 제공할 수도 있다. 네트워크 제어기 (530) 는 백홀을 통해 기지국들과 통신할 수 있는 단일의 네트워크 엔티티 또는 네트워크 엔티티들의 집합을 수도 있다. 기지국들은 또한 예를 들어 무선 또는 유선 백홀을 통해 직접 또는 간접으로 서로와 통신할 수도 있다. DHCP 서버 (540) 는 이하에 기술되는 바와 같이 P2P 통신을 지원할 수도 있다. DHCP 서버 (540) 는 무선 네트워크 (500) 의 부분이거나, 무선 네트워크 (500) 의 외부에 있거나, 인터넷 연결 공유 (Internet Connection Sharing: 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 통신과 동시에 발생하지 않는 경우 기지국들 (510) 과 통신할 수도 있다.
여기의 설명에서, WAN 통신은 예를 들어 다른 디바이스 (520) 와 같은 원격 엔티티와의 통화를 위해 무선 네트워크 (500) 내의 디바이스 (520) 와 기지국 (510) 사이의 통신을 지칭할 수도 있다. WAN 디바이스는 WAN 통신에 관심이 있거나 WAN 통신에 종사하고 있는 디바이스 (520) 이다. P2P 통신은 임의의 기지국 (510) 을 통과하지 않고 2 이상의 디바이스들 (520) 사이의 직집적인 통신을 지칭한다. P2P 디바이스는 P2P 통신에 관심이 있거나 P2P 통신에 종사하고 있는 디바이스 (520), 예를 들어 P2P 디바이스의 근접도 내의 다른 디바이스 (520) 에 대한 트래픽 데이터를 갖는 디바이스 (520) 이다. 2 개의 디바이스들은, 예를 들어 각 디바이스 (520) 가 다른 디바이스 (520) 를 검출할 수 있는 경우, 서로의 근접도 내에 있는 것으로 고려될 수도 있다. 일반적으로, 디바이스 (520) 는 P2P 통신의 경우 직접 또는 WAN 통신의 경우 적어도 하나의 기지국 (510) 을 통해 다른 디바이스 (520) 와 통신할 수도 있다.
하나의 실시형태에서, P2P 디바이스들 (520) 사이의 직접적인 통신은 P2P 그룹들로 조직될 수도 있다. 더욱 구체적으로는, P2P 그룹은 일반적으로 P2P 통신에 관심이 있거나 P2P 통신에 종사하고 있는 2 이상의 디바이스들 (520) 의 그룹을 지칭하고, P2P 링크는 P2P 그룹에 대한 통신 링크를 지칭한다. 더욱이, 하나의 실시형태에서, P2P 그룹은 P2P 그룹 소유자 (또는 P2P 서버) 로 지정된 하나의 디바이스 (520) 및 그 P2P 그룹 소유자에 의해 서빙되는 P2P 클라이언트로 지정된 하나 이상의 디바이스들 (520) 을 포함할 수도 있다. 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, 블루투스, 또는 Wi-Fi 다이렉트와 같은 기술들을 사용하여 무선 로컬 영역 네트워크 (WLAN) 상에서 P2P 로 통신할 수도 있다. 예를 들어, Wi-Fi, 블루투스, Wi-Fi 다이렉트, 또는 다른 WLAN 기술들을 사용하는 P2P 통신은 2 이상의 이동 전화들, 게임 콘솔들, 랩톱 컴퓨터들, 또는 다른 적합한 통신 엔티티들 사이의 P2P 통신을 가능하게 할 수도 있다.
본 개시의 하나의 양태에 따르면, 도 6 은 여러 디바이스들 (610, 630, 640) 이 그것을 통해 통신할 수도 있는 근접도-기반 분포된 버스를 확립하기 위해 발견가능한 P2P 서비스들이 사용될 수도 있는 예시적인 환경 (600) 을 도시한다. 예를 들어, 하나의 실시형태에서, 단일의 플랫폼 상의 애플리케이션들 등 사이의 통신들은 네크워킹된 컴퓨팅 환경에서 애플리케이션-대-애플리케이션 통신들을 가능하게 하기 위해 사용되는 소프트웨어 버스를 포함할 수도 있는 분포된 버스 (625) 를 통해 인터프로세스 통신 프로토콜 (interprocess communication protocol: ICP) 프레임워크를 사용하여 용이하게 될 수도 있으며, 여기서 애플리케이션들은 다른 애플리케이션들로 서비스들을 제공하기 위해 분포된 버스 (625) 에 등록하고 다른 애플리케이션들은 등록된 애플리케이션들에 대한 정보를 위해 분포된 버스 (625) 에 질의한다. 그러한 프로토콜은 신호 메시지들 (예를 들어, 통지들) 이 점-대-점 또는 브로드캐스트일 수도 있는 비동기식 통지들 및 원격 프로시져 콜들 (RPCs) 을 제공할 수도 있고, 메소드 콜 메시지들 (예를 들어, RPC 들) 은 동기식 또는 비동기식일 수도 있으며, 분포된 버스 (625) (예를 들어, "대몬 (daemon)" 버스 프로세스) 는 여러 디바이스들 (610, 630, 640) 사이의 메시지 라우팅을 핸들링할 수도 있다.
하나의 실시형태에서, 분포된 버스 (625) 는 다양한 전송 프로토콜들 (예를 들어, 블루투스, TCP/IP, Wi-Fi, CDMA, GPRS, UMTS 등) 에 의해 지원될 수도 있다. 예를 들어, 하나의 양태에 따르면, 제 1 디바이스 (610) 는 분포된 버스 노드 (612) 및 하나 이상의 로컬 엔드포인트들 (614) 을 포함할 수도 있으며, 여기서 분포된 버스 노드 (612) 는 (예를 들어, 제 2 디바이스 (630) 및 제 3 디바이스 (640) 상의 분포된 버스 노드들 (632 및 642) 를 통해) 분포된 버스 (625) 를 통해 제 1 디바이스 (610) 와 연관된 로컬 엔드포인트들 (614) 와 제 2 디바이스 (630) 및 제 3 디바이스 (640) 와 연관된 로컬 엔드포인트들 (634 및 644) 사이의 통신들을 용이하게 할 수도 있다. 도 7 을 참조하여 이하에 더 상세히 기술될 바와 같이, 분포된 버스 (625) 는 대칭적 멀티-디바이스 네트워크 토폴로지들을 지원할 수도 있고, 디바이스 드롭-아웃들의 존재하에서 강건한 동작을 제공할 수도 있다. 이와 같이, 일반적으로 임의의 언더라잉 전송 프로토콜 (예를 들어, 블루투스, TCP/IP, Wi-Fi 등) 로부터 독립적일 수도 있는 가상의 분포된 버스 (625) 는 비보안 (예를 들어, 개방) 으로부터 보안 (예를 들어, 인증 및 암호화) 까지 여러 보안 옵션들을 허용할 수도 있으며, 여기서 보안 옵션들은 여러 디바이스들 (610, 630, 640) 이 서로에 대한 범위 또는 근접도 내로 오는 경우 개입 없이 제 1 디바이스 (610), 제 2 디바이스 (630, 및 제 3 디바이스 (640) 사이와의 자발적인 연결들을 용이하게 하면서 사용될 수 있다.
본 개시의 하나의 양태에 따르면, 도 7 은 제 1 디바이스 ("디바이스 A") (710) 및 제 2 디바이스 ("디바이스 B") (730) 가 그것을 통해 통신할 수도 있는 근접도-기반 분포된 버스를 확립하기 위해 발견가능한 P2P 서비스들이 사용될 수도 있는 예시적인 메시지 시퀀스 (700) 를 도시한다. 일반적으로, 디바이스 A (710) 는 디바이스 B (730) 과 통신하기를 요청할 수도 있으며, 여기서 디바이스 A (710) 는 그러한 통신들을 용이하게 하는 것을 도울 수도 있는 버스 노드 (712) 에 더하여 통신하기 위한 요청을 행할 수도 있는 로컬 엔드포인트 (714) (예를 들어, 로컬 애플리케이션, 서비스 등) 를 포함할 수도 있다. 또한, 디바이스 B (730) 는 디바이스 A (710) 상의 로컬 엔드포인트 (714) 와 디바이스 B (730) 상의 로컬 엔드포인트 (734) 사이의 통신들을 용이하게 하는 것을 도울 수도 있는 버스 노드 (732) 에 더하여 로컬 엔드포인트 (714) 가 통신하기를 시도하고 있을 수도 있는 로컬 엔드포인트 (734) 를 포함할 수도 있다.
하나의 실시형태에서, 버스 노드들 (712 및 732) 은 메시지 시퀀스 단계 (754) 에서 적합한 발견 메커니즘을 수행할 수도 있다. 예를 들어, 블루투스, TCP/IP, UNIX 등에 의해 지원되는 연결들을 발견하기 위한 메커니즘들이 사용될 수도 있다. 메시지 시퀀스 단계 (756) 에서, 디바이스 A (710) 상의 로컬 엔드포인트 (714) 는 버스 노드 (712) 를 통해 이용가능한 엔티티, 서비스, 엔드포인트 등에 연결하기를 요청할 수도 있다. 하나의 실시형태에서, 그 요청은 로컬 엔드포인트 (714) 와 버스 노드 (712) 사이의 요청-및-응답 프로세스를 포함할 수도 있다. 메시지 시퀀스 단계 (758) 에서, 분포된 메시지 버스는 버스 노드 (712) 를 버스 노드 (732) 에 연결하고 이것에 의해 디바이스 A (710) 와 디바이스 B (730) 사이의 P2P 연결을 확립하도록 형성될 수도 있다. 하나의 실시형태에서, 버스 노드들 (712 및 732) 사이에 분포된 버스를 형성하는 통신들은 적합한 근접도-기반 P2P 프로토콜 (예를 들어, 연결된 제품들 사이의 상호동작가능성을 가능하게 하도록 설계된 AllJoynTM 소프트웨어 프레임워크 및 근위의 네트워크들을 동적으로 생성하고 근위의 P2P 통신을 용이하게 하는 상이한 제조자들로부터의 소프트웨어 애플리케이션들) 을 사용하여 용이하게 될 수도 있다. 대안적으로, 하나의 실시형태에서, 서버 (도시하지 않음) 는 버스 노드들 (712 및 732) 사이의 연결을 용이하게 할 수도 있다. 더욱이, 하나의 실시형태에서, 적합한 인증 메커니즘이 버스 노드들 (712 및 732) 사이의 연결을 형성하기 전에 사용될 수도 있다 (예를 들어, 인증 대화를 개시하기 위한 인증 커맨드를 클라이언트가 전송할 수도 있는 SASL 인증). 여전히 추가로, 메시지 시퀀스 단계 (758) 동안, 버스 노드들 (712 및 732) 은 다른 이용가능한 엔드포인트들 (예를 들어, 도 6 에서의 디바이스 C (640) 상의 로컬 엔드포인트들 (644)) 에 대한 정보를 교환할 수도 있다. 그러한 실시형태들에서, 버스 노드가 유지하는 각 로컬 엔드포인트는 다른 버스 노드들로 광고될 수도 있고, 여기서 그 광고는 고유한 엔드포인트 네임들, 전송 타입들, 연결 파라미터들, 또는 다른 적합한 정보를 포함할 수도 있다.
하나의 실시형태에서, 메시지 시퀀스 단계 (760) 에서, 버스 노드 (712) 및 버스 노드 (732) 는 여러 버스 노드들을 통해 이용가능한 실제의 획득된 엔드포인트들을 나타낼 수도 있는 가상의 엔트포인트들을 생성하기 위해 각각 로컬 엔드포인트들 (734 및 714) 과 연관된 획득된 정보를 사용할 수도 있다. 하나의 실시형태에서, 버스 노드 (712) 상의 메시지 라우팅은 메시지들을 전달하기 위해 실제의 및 가상의 엔드포인트들을 사용할 수도 있다. 또한, 원격 디바이스들 (예를 들어, 디바이스 A (710)) 상에 존재하는 모든 엔트포인트에 대한 하나의 로컬 가상 엔드포인트가 존재할 수도 있다. 여전히 또한, 그러한 가상 엔드포인트들은 분포된 버스 (예를 들어, 버스 노드 (712) 와 버스 노드 (732) 사이의 연결) 를 통해 전송된 메시지들을 멀티플렉싱 및/또는 디-멀티플렉싱할 수도 있다. 하나의 양태에서, 가상 엔드포인트들은 실제 엔드포인트들처럼 로컬 버스 노드 (712 또는 732) 로부터 메시지들을 수신할 수도 있고, 분포된 버스를 통해 메시지들을 포워드할 수도 있다. 이와 같이, 가상 엔드포인트들은 엔드포인트 멀티플렉싱된 분포된 버스 연결로부터 로컬 버스 노드들 (712 및 732) 로 메시지들을 포워드할 수도 있다. 더욱이, 하나의 실시형태에서, 원격 디바이스상의 가상 엔드포인트들에 대응하는 가상 엔드포인트들은 특정의 전송 타입들의 원하는 토폴로지들을 수용하기 위해 임의의 시간에 재연결될 수도 있다. 그러한 양태에서, UNIX 기반 가상 엔드포인트은 로컬인 것으로 고려될 수도 있고, 이와 같이 재연결을 위한 고려된 후보들이 아닐 수도 있다. 또한, TCP-기반 가상 엔드포인트들은 하나의 호핑 라우팅에 최적화될 수도 있다 (예를 들어, 각 버스 노드 (712 및 732) 는 서로 직접 연결될 수도 있다). 여전히 또한, 블루투스-기반 가상 엔드포인트은 블루투스-기반 마스터가 로컬 마스터 노드와 동일한 버스 노드일 수도 있는 단일 피코-네트 (예를 들어, 하나의 마스터 및 n 개의 슬레이브들) 에 대해 최적화될 수도 있다.
메시지 시퀀스 단계 (762) 에서, 버스 노드 (712) 및 버스 노드 (732) 는 버스 상태 정보를 교환하여 버스 인스턴스들을 병합하고 분포된 버스를 통해 통신을 가능하게 한다. 예를 들어, 하나의 실시형태에서, 버스 상태 정보는 잘 알려진 대 고유한 엔드포인트 네임 맵핑, 매칭 규칙들, 라우팅 그룹, 또는 다른 적합한 정보를 포함할 수도 있다. 하나의 실시형태에서, 상태 정보는 분포된 버스 기반 로컬 네임을 사용하여 통신하는 로컬 엔드포인트들 (714 및 734) 와의 인터페이스를 사용하여 버스 노드 (712) 및 버스 노드 (732) 사이에 통신될 수도 있다. 다른 양태에서, 버스 노드 (712) 및 버스 노드 (732) 는 각각 분포된 버스로 피드백을 제공하는 것을 담당하는 로컬 버스 제어기를 유지할 수도 있으며, 버스 제어기는 분포된 버스와 연관된 표준들로 글로벌 방법들, 인수들, 신호들, 및 다른 정보를 번역할 수도 있다. 메시지 시퀀스 단계 (764) 에서, 버스 노드 (712) 및 버스 노드 (732) 는 상술된 바와 같이, 버스 노드 연결들 동안 도입된 임의의 변경들에 대해 각각의 로컬 엔드포인트들 (714 및 734) 에게 알리기 위해 신호들을 통신 (예를 들어, 브로드캐스트) 할 수도 있다. 하나의 실시형태에서, 새로운 및/또는 제거된 글로벌 및/또는 번역된 네임들은 네임 소유자 변경 신호들로 표시될 수도 있다. 더욱이 (예를 들어, 네임 충돌들로 인해) 로컬로 손실될 수도 있는 글로벌 네임들은 네임 손실 신호들로 표시될 수도 있다. 여전히 추가로, 네임 충돌들로 인해 전달되는 글로벌 네임들은 네임 소유자 변경 신호들로 표시될 수도 있고, 버스 노드 (712) 및 버스 노드 (732) 가 연결해제되게 된다면 및/또는 연결해제될 때 사라지는 고유의 네임들은 네임 소유자 변경 신호들로 표시될 수도 있다.
위에서 사용된 바와 같이, 잘 알려진 네임들은 로컬 엔드포인트들 (714 및 734) 을 고유하게 기술하기 위해 사용될 수도 있다. 하나의 실시형태에서, 통신들이 디바이스 A (710) 와 디바이스 B (730) 사이에 발생하는 경우, 상이한 잘 알려진 네임 타입들이 사용될 수도 있다. 예를 들어, 디바이스 로컬 네임은 버스 노드 (712) 가 직접 어태치되는 디바이스 A (710) 와 연관된 버스 노드 (712) 상에만 존재할 수도 있다. 다른 예에서, 글로벌 네임은 모든 알려진 버스 노드들 (712 및 732) 상에 존재할 수도 있으며, 여기서 그 네임의 단 하나의 소유자만이 모든 버스 세그먼트들상에 존재할 수도 있다. 즉, 버스 노드 (712) 및 버스 노드 (732) 가 조인되고 임의의 충돌들이 발생하는 경우, 소유자들 중 하나는 글로벌 네임을 손실할 수도 있다. 여전히 다른 예에서, 번역된 네임은 클라이언트가 가상 버스와 연관된 다른 버스 노드들에 연결되는 경우 사용될 수도 있다. 그러한 양태에서, 번역된 네임은 첨부된 엔드를 포함할 수도 있다 (예를 들어, 글로벌 고유 식별자 "1234" 를 갖는 분포된 버스에 연결된 잘 알려진 네임 "org.foo" 를 갖는 로컬 엔드포인트 (714) 는 "G1234.org.foo" 로서 보여질 수도 있다).
메시지 시퀀스 단계 (766) 에서, 버스 노드 (712) 및 버스 노드 (732) 는 다른 버스 노드들에게 엔드포인트 버스 토폴로지드에 대한 변경들을 알리기 위해 신호들을 통신 (예를 들어, 브로드캐스트) 할 수도 있다. 이후에, 로컬 엔드포인트 (714) 로부터의 트래픽은 디바이스 B (730) 상의 의도된 로컬 엔드포인트 (734) 에 도달하기 위해 가상 엔드포인트들을 통해 이동할 수도 있다. 또한, 동작 시에, 로컬 엔드포인트 (714) 와 로컬 엔드포인트 (734) 사이의 통신들은 라우팅 그룹들을 사용할 수도 있다. 하나의 양태에서, 라우팅 그룹들은 엔드포인트들이 엔드포인트들의 서브세트로부터 신호들, 메소드 콜들, 또는 다른 적합한 정보를 수신하는 것을 가능하게 할 수도 있다. 이와 같이, 라우팅 네임은 버스 노드 (712 또는 732) 에 연결된 애플리케이션에 의해 결정될 수도 있다. 예를 들어, P2P 애플리케이션은 그 애플리케이션 내로 구축된 고유의, 잘 알려진 라우팅 그룹 네임을 사용할 수도 있다. 또한, 버스 노드들 (712 및 732) 은 라우팅 그룹들에의 로컬 엔드포인트들 (714 및 734) 의 등록 및/또는 등록해제를 지원할 수도 있다. 하나의 실시형태에서, 라우팅 그룹들은 현재의 버스 인스턴스를 너머 지속성을 갖지 않을 수도 있다. 다른 양태에서, 애플리케이션들은 그들이 분포된 버스에 연결될 때마다 그들의 선호된 라우팅 그룹들에 대해 등록할 수도 있다. 여전히 또한, 그룹들은 개방될 수도 있거나 (예를 들어, 엔드포인트가 조인할 수 있다), 폐쇄될 수도 있다 (예를 들어, 그룹의 생성자만이 그룹을 변경할 수 있다). 여전히, 추가로, 버스 노드 (712 또는 732) 는 라우팅 그룹 엔드포인트들로 다른 원격 버스 노드들 또는 추가들, 제거들, 또는 다른 변경들을 통지하기 위해 신호들을 전송할 수도 있다. 그러한 실시형태들에서, 버스 노드 (712 또는 732) 는 멤버가 추가되고 및/또는 그룹으로 제거될 때마다 다른 그룹 멤버들로 라우팅 그룹 변경 신호를 전송할 수도 있다. 또한, 버스 노드 (712 또는 732) 는 라우팅 그룹으로부터 그들 자신들을 먼저 제거하지 않고 분포된 버스로부터 연결해제하는 엔드포인트들로 라우팅 그룹 변경 신호를 전송할 수도 있다.
가까운 미래에, IoT 기술들에서의 증가하는 개발은 가정에서, 차량들에서, 직장에서, 및 다수의 다른 장소들에서 사용자를 둘러싸는 다수의 IoT 디바이스들을 야기할 것이다. 점점더 많은 디바이스들이 네트워크-인식하게 되어감에 따라, 디바이스들을 구성하는 것과 관련된 문제들은 더욱 예민하게 될 것이다. 하나의 문제는 디바이스들을 업그레이드하거나 추가하고 구 디바이스로부터 신 디바이스로 엔드 유저의 개인적 선호도들의 세트를 전송할 때 심리스 경험을 생성하는 것이다. 예를 들어, 사용자는 방안의 사람에게 뷰잉 경험들을 맞출 수 있는 새로운 스마트 TV 를 구매할 수도 있다. 사용자가 처음에 구 스마트 TV 를 구매했을 때, 사용자는 예를 들어 사용자가 어떤 타입들의 쇼들 및 영화들을 보기를 좋아하는지의 사용자의 선호도들로 그것을 프로그래밍해야 했다. 스마트 TV 는 또한 시간이 경과함에 따라 사용자의 이들 또는 다른 선호도들을 학습했을 수도 있다. 사용자가 새로운 스마트 TV 를 설치하는 경우, 그러나, 사용자는 그의 또는 그녀의 개인적 선호도들을 다시 재프로그래밍해야 할 것이고, 및/또는 스마트 TV 는 이들 선호도들을 다시 학습해야 할 것이다.
이에 따라, 본 개시는 사용자의 홈 네트워크와 같은 로컬 무선 네트워크에 추가될 때 새로운 IoT 디바이스들이 사용자 선호도들 및/또는 디바이스 구성 정보를 수신하는 것을 가능하게 하는 (도 2a 에서의 선호도/구성 모듈 (216) 에서 구현될 수도 있는) 사용자 선호도 서비스를 제공한다. 개시된 서비스는 사용자가 사용자 선호도들 및/또는 디바이스 구성의 일회 셋업을 수행하는 것을 허용한다. 대안적으로, 사용자 선호도들 및/또는 디바이스 구성 정보는 시간의 경과에 따라 동적으로 학습될 수도 있다. 새로운 디바이스가 사용자 네크워크에 추가되는 경우, 그것은 사용자 선호도들 및/또는 디바이스 구성 정보를 수신 및 포함할 수 있으며, 이것에 의해 사용자가 새로운 디바이스를 구성할 필요를 제거할 수 있다.
예를 들어, 사용자는 그 또는 그녀가 74 도의 온도를 선호하는 반면 가정에서의 다른 사용자가 78 도의 온도를 선호한다고 특정할 수 있다. 사용자가 처음에 새로운 스마트 온도조절장치를 설치하는 경우, 디바이스는 그것이 포함할 수도 있는 임의의 학습 알고리즘들을 시동걸기 위해 그것이 사용하여 시작할 수 있는 사용자의 선호도들에 대한 일부 사전 지식을 가질 것이다. 그것이 비학습 온도조절장치이지만 이들 온도 선호도들을 이해할 수 있는 경우, 그것은 가정에서의 사용자들의 중앙값으로 온도를 조정할 수 있음으로써 더 스마트하게 보일 수 있다. 다른 예로서, 위의 스마트 TV 예를 참조하면, 스마트 TV 는 그것을 시청하는 4 명의 사람들을 검출하고 그들을 성별 (남성 또는 여성), 연령 그룹, 및 관심사들에 의해 분류하고, 그것이 네트워크에 조인할 때 수신한 사용자 선호도들에 기초하여 프로파일들을 자동적으로 생성할 수도 있다.
이러한 기능을 달성하기 위해, 사용자 선호도 서비스는 사용자의 선호도들 및/또는 디바이스 구성 정보를 나타내는 사용자-입력된 및/또는 학습된 키들의 테이블을 포함하는 신호를 발행할 수 있다. 이것은 그 테이블 내의 키들의 의미에 관한 상호동작가능성 문제를 제시하지만, 이것은 본 개시의 범위를 넘고, 상호동작가능성을 보장하기 위해 컨소시엄/동맹에 의해 정의될 것이다. 각각의 선호도/구성 값이 IoT 디바이스가 선호도/구성을 수신하는 것을 허용할지 여부의 확인을 허용하기 위해 공개 또는 비밀로서 마크될 수 있다.
사용자 선호도 서비스는 또한 테이블 내로 선호도/구성 값들을 "사전 충전 (prefill)" 하는 것을 돕기 위해 새로운 IoT 디바이스를 모니터하는 학습 알고리즘을 제공할 수 있다. 예를 들어, 사용자가 주로 액션 영화들을 시청하는 경우, "영화_관심" 엔트리는 장르 "액션" 을 포함하도록 업데이트될 수 있다. 유사하게 사용자는 그의 또는 그녀의 스마트폰이 항상 사용자의 주변의 온도를 알고 있는 선호도를 가질 수도 있다. 본질적으로, 데이터의 이러한 공개는 디바이스들에게 "이것이 내가 좋아하는 것들이니, 네가 그것으로 도와 줄 수 있니?" 라고 말하고, 디바이스들이 "네가 그것을 그런 방식으로 좋아한다면, 너를 위해 그것을 변경하는 것을 도와 줄께" 라고 말하는 것을 허용하는 것에 대한 것이다.
도 8a 내지 도 8c 는 동작 중에 있는 사용자 선호도 서비스의 여러 예들을 도시한다. 도 8a 내지 도 8c 에 도시된 여러 IoT 디바이스들은 도 5 내지 도 7 을 참조하여 상술된 바와 같이, P2P 프로토콜을 사용하여 서로와 통신할 수도 있다.
도 8a 는 태블릿 컴퓨터로서 도시된 제어기 IoT 디바이스 (802) 와 통신하는 스마트 온도조절장치 (804) 를 포함하는 예시의 홈 네트워크를 도시한다. 제어기 IoT 디바이스 (802) 가 태블릿 컴퓨터로서 도시되지만, 본 개시는 그렇게 제한되지 않고, 제어기 IoT 디바이스 (802) 는 스마트폰, 도 1b 에 도시된 컴퓨터 (120), 슈퍼바이저 (130), 또는 IoT 서버 (170), 도 2a 에서의 IoT 디바이스 (200A), 또는 도 4 의 서버 (400) 과 같은, 여기서 기술된 기능이 가능한 임의의 IoT 디바이스일 수도 있다. 여기에 기술된 기능을 구현하기 위해, 제어기 IoT 디바이스 (802) 는 도 4 에서의 선호도/구성 모듈 (416) 을 포함할 수도 있다.
제어기 IoT 디바이스 (802) 는 사용자의 홈 네트워크에 어태치된 여러 IoT 디바이스들에 대한 사용자의 선호도들 및/또는 디바이스 구성 정보를 저장할 수 있다. 사용자는 이들 선호도들/구성들로 제어기 IoT 디바이스 (802) 를 프로그래밍했을 수도 있고, 제어기 IoT 디바이스 (802) 는 그 후 적절한 IoT 디바이스들로 선호도들/구성들을 공개했을 수도 있다. 대안적으로, 제어기 IoT 디바이스 (802) 는 IoT 디바이스들이 사용자에 의해 프로그래밍된 후 및/또는 IoT 디바이스들이 사용자의 하나 이상의 선호도들을 학습한 후 IoT 디바이스들 자신들로부터 선호도들/구성들을 수신했을 수도 있다. 후자의 경우, IoT 디바이스들은 그들이 새로운 선호도들/구성들을 학습함에 따라 제어기 IoT 디바이스 (802) 를 계속 업데이트할 수도 있다.
도 8a 를 참조하면, 스마트 온도조절장치 (804) 는 제어기 IoT 디바이스 (802) 로부터 사용자의 온도 선호도를 수신하고 이에 따라 온도를 조정할 수 있다. 예를 들어, 현재 온도가 78 도인 경우, 스마트 온도조절장치 (804) 내의 알고리즘은 룸이 73 도의 사용자 선호 온도로 냉각되기 시작하도록 온도를 조정하기 위해 그 정보를 사용한다. 스마트 온도조절장치 (804) 는 이러한 기능을 구현하기 위해 선호도/구성 모듈 (216) 을 포함할 수도 있다.
도 8b 는 도 8a 에 도시된 제어기 IoT 디바이스 (802) 와 통신하는 스마트 텔레비젼 (806) 을 포함하는 예시의 홈 네트워크를 도시한다. 도8b 에 도시된 바와 같이, 스마트 텔레비젼 (806) 은 소정의 사용자 선호도들, 예를 들어 사용자의 가장 좋아하는 채널이 채널 8 이라는 것을 학습했을 수도 있다. 제어기 IoT 디바이스 (802) 와 통신한 후, 스마트 텔레비젼 (806) 은 사용자의 가장 좋아하는 영화 장르가 "액션" 이라는 것을 발견할 수도 있다. 스마트 텔레비젼 (806) 은 그것의 로컬로 저장된 사용자 선호도들의 리스트에 이러한 사용자 정의된 선호도를 추가할 수 있다. 즉, 스마트 텔레비젼 (806) 은 그것이 시간의 경과에 따라 학습하는 사용자 선호도들을 사용자가 명시적으로 정의하는 사용자 선호도들로 증대시킬 수 있다. 스마트 텔레비젼 (806) 은 이러한 기능을 구현하기 위해 선호도/구성 모듈 (216) 을 포함할 수도 있다.
도 8c 는 다른 스마트 텔레비젼 (808) 과 통신하는 도 8b 에 도시된 스마트 텔레비젼 (806) 을 포함하는 예시의 홈 네트워크를 도시한다. 도 8c 의 예에서, 스마트 텔레비젼 (808) 은 사용자의 홈 네트워크에 최근에 추가되었다. 스마트 텔레비젼 (808) 은 다음의 기능을 구현하기 위해 선호도/구성 모듈 (216) 을 포함할 수도 있다. 사용자의 홈 네트워크를 검출한 때, 스마트 텔레비젼 (808) 은 스마트 텔레비젼 (806) 과 같은 유사한 IoT 디바이스들로부터 사용자 선호도들 및/또는 디바이스 구성 정보를 요청할 수 있다. 스마트 텔레비젼 (808) 은 도 5 내지 도 7 을 참조하여 상술된 바와 같이, P2P 프로토콜을 사용하여 사용자의 홈 네트워크상의 모든 IoT 디바이스들에게 그 요청을 브로드캐스트할 수도 있다. 대안적으로, 스마트 텔레비젼 (806) 은 유사한 IoT 디바이스가 사용자의 홈 네트워크에 조인했다는 것을 검출하고 그것이 가지고 있을 수도 있는 임의의 공개 사용자 선호도들 및/또는 디바이스 구성 정보를 스마트 텔레비젼 (808) 으로 전송할 수도 있다. 스마트 텔레비젼 (806) 은 예를 들어 스마트 텔레비젼 (808) 으로부터 소개 또는 "어바웃 (about)" 메시지를 수신함으로써 스마트 텔레비젼 (808) 을 검출할 수도 있다.
어느 경우에나, 새로운 스마트 텔레비젼 (808) 은 스마트 텔레비젼 (806) 으로부터 사용자 선호도들 및/또는 디바이스 구성 정보를 수신하고 그 수신된 사용자 선호도들 및/또는 디바이스 구성 정보로 임의의 유사한 사용자 선호도들 및/또는 디바이스 구성 정보를 업데이트 또는 팝퓰레이팅한다. 이러한 방식으로, 사용자는 그의 또는 그녀의 선호도들 및/또는 디바이스 구성 정보로 스마트 텔레비젼 (808) 을 프로그래밍할 필요가 없을 것이고, 스마트 텔레비젼 (808) 은 유사한 IoT 디바이스, 여기서는 스마트 텔레비젼 (806) 에 의해 이미 학습된 사용자 선호도들 및/또는 디바이스 구성 정보를 학습할 필요가 없을 것이다.
도 9 는 제 1 사용자 디바이스 (902) 의 사용자 선호도 정보 및/또는 디바이스 구성 정보를 설정하기 위한 예시적인 플로우를 도시한다. 제 1 사용자 디바이스 (902) 는 도 2a 에서의 IoT 디바이스 (200A) 와 같은 임의의 IoT 디바이스일 수도 있다. 도 9 에 도시된 바와 같이, 제 1 사용자 디바이스 (902) 는 디바이스 (904) 와 통신할 수도 있다. 디바이스 (904) 는 제 1 사용자 디바이스 (902) 와 유사한, IoT 디바이스 (200A) 와 같은 제 2 사용자 디바이스일 수도 있거나 (예를 들어, 제 1 사용자 디바이스 (902) 및 디바이스 (904) 양자 모두가 스마트 TV 들일 수도 있다), 디바이스 (904) 는 슈퍼바이저 디바이스 (130), 서버 (400), 또는 제어기 IoT 디바이스 (802) 와 같은 제어기 IoT 디바이스일 수도 있다. 선호도/구성 모듈 (216) 은 프로세서, 메모리, 및 트랜시버와 같은, 제 1 사용자 디바이스 (902) 의 다른 컴포넌트들과 함께 도 9 를 참조하여 기술된 제 1 사용자 디바이스 (902) 의 기능을 구현할 수도 있다. 디바이스 (904) 가 제 1 사용자 디바이스 (902) 와 유사한 제 2 사용자 디바이스에 대응하는 경우, 선호도/구성 모듈 (216) 은 다시 프로세서, 메모리, 및 트랜시버와 같은, 디바이스 (904) 의 다른 컴포넌트들과 함께 도 9 를 참조하여 기술된 디바이스 (904) 의 기능을 구현할 수도 있다. 대안적으로, 디바이스 (904) 가 제어기 IoT 디바이스인 경우, 선호도/구성 모듈 (416) 은 프로세서, 메모리, 및 트랜시버와 같은, 디바이스 (904) 의 다른 컴포넌트들과 함께 도 9 를 참조하여 기술된 디바이스 (904) 의 기능을 구현할 수도 있다.
사용자 선호도 정보 및/또는 디바이스 구성 정보는 초기에 제 2 사용자 디바이스에서 로컬로 저장될 수도 있거나, 제어기 IoT 디바이스에 저장될 수도 있다. 제 1 사용자 디바이스 (902) 및 디바이스 (904) 양자 모두는 로컬 무선 네트워크의 동일 사용자에 속할 수도 있다.
910 에서, 디바이스 (904) 는 선택적으로 사용자 선호도 정보 및/또는 디바이스 구성 정보를 업데이트한다. 디바이스 (904) 가 제 2 사용자 디바이스인 경우, 디바이스 (904) 는 학습 알고리즘에 기초하여 사용자 선호도 정보 및/또는 디바이스 구성 정보를 업데이트할 수도 있다. 대안적으로, 디바이스 (904) 가 제어기 IoT 디바이스인 경우, 디바이스 (904) 는 제 2 사용자 디바이스로부터 사용자 선호도 정보 및/또는 디바이스 구성 정보를 수신한 후 디바이스 (904) 의 메모리에 사용자 선호도 정보 및/또는 디바이스 구성 정보를 저장/업데이트할 수도 있다.
디바이스 구성 정보는 제 2 사용자 디바이스 (904) 의 사용자에 의해 입력되지 않은 구성 정보를 포함할 수도 있다. 예를 들어, 제 2 사용자 디바이스 (904) 는 사용자와의 상호작용들의 이력에 기초하여 구성 정보를 업데이트할 수도 있다. 다른 예로서, 사용자에 의해 입력되지 않은 구성 정보는 제 2 사용자 디바이스 (904) 가 사용자와의 상호작용들의 이력에 기초하여 학습한 사용자의 선호도들을 포함할 수도 있다. 또 다른 예로서, 사용자에 의해 입력되지 않은 구성 정보는, 제 2 사용자 디바이스 (904) 가 스마트 온도조절장치인 경우 제조자에 의해 설정된 최적의 온도와 같이, 사용자의 선호도들이 아닌 상기 제 2 사용자 디바이스 (904) 의 하나 이상의 구성들을 포함할 수도 있다. 다른 예로서, 사용자에 의해 입력되지 않은 구성 정보는, 다시 제 2 사용자 디바이스 (904) 가 스마트 온도조절장치인 경우, 복수의 사용자들의 선호된 온도들의 평균인 온도와 같이, 제 2 사용자 디바이스가 복수의 사용자들과의 상호작용들의 이력에 기초하여 학습한 제 2 사용자 디바이스 (904) 의 하나 이상의 구성들을 포함할 수도 있다. 제 2 사용자 디바이스 (904) 는 또한 제 2 사용자 디바이스 (904) 의 사용자와의 상호작용의 이력에 기초하여 사용자 선호도 정보를 업데이트할 수도 있다.
실시형태에서, 제 2 사용자 디바이스의 구성 정보 및/또는 선호도 정보는 제 2 사용자 디바이스의 모든 구성 정보 및/또는 선호도 정보를 포함할 수도 있다. 대안적으로, 제 2 사용자 디바이스의 구성 정보 및/또는 선호도 정보는 제 2 사용자 디바이스에 설치된 하나 이상의 애플리케이션들의 구성 정보 및/또는 선호도 정보를 포함할 수도 있다.
920 에서, 제 1 사용자 디바이스 (902) 는 로컬 무선 네트워크를 검출한다. 그 검출은 로컬 무선 네트워크의 초기 검출일 수도 있다.
930 에서, 디바이스 (904) 는 선택적으로 제 1 사용자 디바이스 (902) 가 로컬 무선 네트워크에 조인했다는 것을 검출한다. 대안적으로, 940 에서, 제 1 사용자 디바이스 (902) 는 선택적으로 사용자 선호도 정보 및/또는 디바이스 구성 정보를 요청한다. 제 1 사용자 디바이스 (902) 는, 로컬 무선 네트워크 상의 각 디바이스로 또는 디바이스 (904) 가 제어기 IoT 디바이스인 경우 디바이스 (904) 로 그 요청을 브로드캐스트할 수도 있다. 블록들 (930 및 940) 은 선택적이지만, 이들 중 하나는 플로우가 950 으로 진행하기 위해 수행될 필요가 있다.
950 에서, 디바이스 (904), 구체적으로는, 디바이스 (904) 의 선호도/구성 모듈은 제 1 사용자 디바이스 (902) 및 제 2 사용자 디바이스의 능력 및/또는 구성 정보에 기초하여 제 1 사용자 디바이스 (902) 가 제 2 사용자 디바이스와 유사하다고 결정한다. 디바이스 (904) 는 상기 제 2 사용자 디바이스의 능력 및/또는 구성 정보를 나타내는 값들과 오버랩핑하는 제 1 사용자 디바이스 (902) 의 능력 및/또는 구성 정보를 나타내는 값들에 기초하여 제 2 사용자 디바이스가 제 1 사용자 디바이스 (902) 와 유사한 기능을 갖는다고 결정할 수도 있다.
960 에서, 950 에서의 결정에 응답하여, 디바이스 (904) 는 제 1 사용자 디바이스 (902) 에게 제 2 사용자 디바이스의 사용자 선호도 정보 및/또는 디바이스 구성 정보를 전송한다. 대안적으로, 제 1 사용자 디바이스 (902) 가 디바이스 (904) 에게 940 에서의 요청을 전송하는 경우 (디바이스 (904) 가 제어기 IoT 디바이스인 경우), 디바이스 (904) 는 950 에서 로컬 무선 네트워크상의 어느 사용자 디바이스들이 제 1 사용자 디바이스 (902) 와 유사한 기능을 갖는지를, 예를 들어 제 2 사용자 디바이스를 결정하고, 그 사용자 디바이스에게, 디바이스 (904) 가 제 1 사용자 디바이스 (902) 자신에게 디바이스 구성 정보 및/또는 사용자 선호도 정보를 전송하는 대신에, 960 에서 제 1 사용자 디바이스 (902) 로 디바이스 구성 정보 및/또는 사용자 선호도 정보를 전송하도록 명령할 수도 있다.
970 에서, 제 1 사용자 디바이스 (902) 는 디바이스 (904), 또는 대안적으로 제 2 사용자 디바이스로부터 디바이스 구성 정보 및/또는 사용자 선호도 정보를 수신한다.
980 에서, 제 1 사용자 디바이스 (902) 는 적어도 디바이스 (904) 로부터 수신된 디바이스 구성 정보 및/또는 사용자 선호도 정보의 서브세트로 제 1 사용자 디바이스 (902) 의 디바이스 구성 정보 및/또는 사용자 선호도 정보를 업데이트한다. 제 1 사용자 디바이스 (902) 의 디바이스 구성 정보 및/또는 사용자 선호도 정보는 제 1 사용자 디바이스 (902) 에 저장될 수도 있다. 그 업데이트는 제 1 사용자 디바이스 (902) 의 초기 구성일 수도 있다.
도 10 은 일련의 상호 관련된 기능 모듈들로서 표현된 예시의 사용자 디바이스 장치 (1000) 를 도시한다. 사용자 디바이스 장치 (1000) 는 도 2a 에서의 IoT 디바이스 (200A) 와 같은 사용자 디바이스에 대응할 수도 있다. 검출하는 모듈 (1002) 은 적어도 일부 양태들에서, 예를 들어 여기에 논의된 바와 같은, 트랜시버 (206) 와 같은 통신 디바이스에 대응할 수도 있다. 요청하는 모듈 (1004) 은 적어도 일부 양태들에서, 예를 들어 여기에 논의된 바와 같은, 트랜시버 (206) 와 같은 통신 시스템에 대응할 수도 있다. 수신하는 모듈 (1006) 은 적어도 일부 양태들에서, 예를 들어 여기에 논의된 바와 같은, 트랜시버 (206) 와 같은 통신 디바이스, 또는 선호도/구성 모듈 (216) 과 결합한 프로세서 (208) 와 같은 프로세싱 시스템에 대응할 수도 있다. 업데이트하는 모듈 (1008) 은 적어도 일부 양태들에서, 예를 들어 여기에 논의된 바와 같은, 선호도/구성 모듈 (216) 과 결합한 프로세서 (208) 와 같은 프로세싱 시스템에 대응할 수도 있다.
도 11 은 일련의 상호 관련된 기능 모듈들로서 표현된 예시의 사용자 디바이스/제어기 디바이스 장치 (1100) 를 도시한다. 사용자 디바이스/제어기 디바이스 장치 (1100) 는 도 2a 에서의 IoT 디바이스 (200A) 와 같은 사용자 디바이스 또는 도 9 를 참조하여 상술된 제 2 사용자 디바이스에 대응할 수도 있다. 대안적으로, 사용자 디바이스/제어기 디바이스 장치 (1100) 는 도 8a 내지 도 8c 에서의 제어기 IoT 디바이스 (802) 와 같은 제어기 IoT 디바이스에 대응할 수도 있다. 도 11 을 참조하면, 업데이트하는 모듈 (1102) 은 적어도 일부 양태들에서, 예를 들어 여기에 논의된 바와 같은, 메모리 (212) 또는 메모리 (403) 와 같은 저장 디바이스와 결합한 프로세서 (208) 또는 프로세서 (401) 와 같은 프로세싱 시스템에 대응할 수도 있다. 검출하는 모듈 (1104) 은 적어도 일부 양태들에서, 예를 들어 여기에 논의된 바와 같은, 트랜시버 (206) 또는 네트워크 액세스 포트들 (404) 와 같은 통신 시스템에 대응할 수도 있다. 결정하는 모듈 (1106) 은 적어도 일부 양태들에서, 예를 들어 여기에 논의된 바와 같은, 선호도/구성 모듈 (216) 과 결합한 프로세서 (208) 또는 선호도/구성 모듈 (416) 과 결합한 프로세서 (401) 와 같은 프로세싱 시스템에 대응할 수도 있다. 전송하는 모듈 (1108) 은 적어도 일부 양태들에서, 예를 들어 여기에 논의된 바와 같은, 선호도/구성 모듈 (216) 과 결합한 프로세서 (208) 또는 선호도/구성 모듈 (416) 과 결합한 프로세서 (401) 와 같은 프로세싱 시스템, 또는 트랜시버 (206) 또는 네트워크 액세스 포트들 (404) 와 같은 통신 시스템에 대응할 수도 있다.
도 10 및 도 11 의 모듈들의 기능은 여기의 교시들과 일관성 있는 여러 방식들로 구현될 수도 있다. 일부 설계들에서, 이들 모듈들의 기능은 하나 이상의 전기적 컴포넌트들로서 구현될 수도 있다. 일부 설계들에서, 이들 블록들의 기능은 하나 이상의 프로세서 컴포넌트들을 포함하는 프로세싱 시스템으로서 구현될 수도 있다. 일부 설계들에서, 이들 모듈들의 기능은 예를 들어 하나 이상의 집적회로들 (예를 들어, ASIC) 의 적어도 일부를 사용하여 구현될 수도 있다. 여기에 논의된 바와 같이, 집적회로는 프로세서, 소프트웨어, 다른 관련된 컴포넌트들, 또는 이들의 일부 조합을 포함할 수도 있다. 따라서, 상이한 모듈들의 기능은 예를 들어 집적회로의 상이한 서브세트들로서, 소프트웨어 모듈들의 세트의 상이한 서브세트들로서, 또는 이들의 조합으로서 구현될 수도 있다. 또한, (예를 들어, 집적회로의 및/또는 소프트웨어 모듈들의 세트의) 주어진 서브세트가 2 이상의 모듈에 대한 기능의 적어도 일부를 제공할 수도 있다는 것이 인정될 것이다.
또, 도 10 및 도 11 에 의해 표현된 컴포넌트들 및 기능들 뿐아니라 여기에 기술된 다른 컴포넌트들 및 기능들은 임의의 적합한 수단을 사용하여 구현될 수도 있다. 그러한 수단은 또한 적어도 부분적으로 여기에 교시된 바와 같은 대응하는 구조를 사용하여 구현될 수도 있다. 예를 들어, 도 10 및 도 11 의 컴포넌트들 "을 위한 모듈" 과 결합한 상술된 컴포넌트들은 또한 유사하게 지정된 기능 "을 위한 수단" 에 대응할 수도 있다. 따라서, 일부 양태들에서, 그러한 수단의 하나 이상은 프로세서 컴포넌트들, 집적회로들, 또는 여기에 교시된 바와 같은 다른 적합한 구조 중 하나 이상을 사용하여 구현될 수도 있다.
당업자는, 정보 및 신호들이 임의의 다양한 상이한 기술들 및 기법들을 사용하여 표현될 수도 있음을 인식할 것이다. 예를 들어, 상기 설명을 통해 참조될 수도 있는 데이터, 명령들, 커맨드들, 정보, 신호들, 비트들, 심볼들, 및 칩들은 전압들, 전류들, 전자기파들, 자기 필드들 또는 입자들, 광학 필드들 또는 입자들, 이들의 임의의 조합에 의해 표현될 수도 있다.
또한, 당업자는, 본원에 개시된 양태들과 연계하여 설명된 다양한 예시적인 논리 블록들, 모듈들, 회로들, 및 알고리즘 단계들이 전자 하드웨어, 컴퓨터 소프트웨어, 또는 양자 모두의 조합으로서 구현될 수도 있음을 인식할 것이다. 하드웨어와 소프트웨어의 이러한 상호교환성을 명확하게 설명하기 위해, 다양한 예시적인 컴포넌트들, 블록들, 모듈들, 회로들, 및 단계들이 그들의 기능에 대하여 일반적으로 전술되었다. 이러한 기능이 하드웨어 또는 소프트웨어로 구현되는지 여부는 특정 애플리케이션 및 전체 시스템에 부과되는 설계 제약들에 의존한다. 당업자는, 설명된 기능을 각각의 특정 애플리케이션에 대해 다양한 방식으로 구현할 수도 있지만, 이러한 구현 결정은 본 개시물의 범위를 벗어나게 하는 것으로 해석되어서는 안된다.
본원에서 개시된 양태들과 연계하여 설명된 다양한 예시적인 논리 블록들, 모듈들, 및 회로들은 범용 프로세서, 디지털 신호 프로세서 (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 사용자 디바이스에 의해, 로컬 무선 네트워크를 검출하는 단계;
상기 제 1 사용자 디바이스에서, 상기 로컬 무선 네트워크 내의 제 2 사용자 디바이스로부터, 상기 제 1 사용자 디바이스와 유사한 기능을 갖는 상기 제 2 사용자 디바이스의 구성 정보 및/또는 선호도 정보를 수신하는 단계; 및
상기 제 1 사용자 디바이스에 의해, 적어도 상기 제 2 사용자 디바이스로부터 수신된 상기 구성 정보 및/또는 선호도 정보의 서브세트로 상기 제 1 사용자 디바이스의 구성 정보 및/또는 선호도 정보를 업데이트하는 단계로서, 상기 제 1 사용자 디바이스의 상기 구성 정보 및/또는 선호도 정보는 상기 제 1 사용자 디바이스에 저장되는, 상기 구성 정보 및/또는 선호도 정보를 업데이트하는 단계를 포함하고,
상기 제 1 사용자 디바이스는 사용자로부터 상기 제 1 사용자 디바이스의 상기 구성 정보 및/또는 선호도 정보를 업데이트하라는 명령을 수신하지 않고 상기 제 1 사용자 디바이스의 상기 구성 정보 및/또는 선호도 정보를 업데이트하는, 사용자 선호도들 및/또는 디바이스 구성 정보를 설정하는 방법. - 제 1 항에 있어서,
상기 제 2 사용자 디바이스는 상기 제 1 사용자 디바이스의 능력 및/또는 구성 정보에 기초하여 그것이 상기 제 1 사용자 디바이스와 유사한 기능을 갖는다고 결정하고, 상기 결정에 응답하여, 상기 제 1 사용자 디바이스로 상기 제 2 사용자 디바이스의 상기 구성 정보 및/또는 선호도 정보를 전송하는, 사용자 선호도들 및/또는 디바이스 구성 정보를 설정하는 방법. - 제 2 항에 있어서,
상기 제 2 사용자 디바이스는 상기 제 2 사용자 디바이스의 능력 및/또는 구성 정보를 나타내는 값들과 오버랩핑하는 상기 제 1 사용자 디바이스의 능력 및/또는 구성 정보를 나타내는 값들에 기초하여 그것이 상기 제 1 사용자 디바이스와 유사한 기능을 갖는다고 결정하는, 사용자 선호도들 및/또는 디바이스 구성 정보를 설정하는 방법. - 제 1 항에 있어서,
상기 제 2 사용자 디바이스의 상기 구성 정보는 상기 제 2 사용자 디바이스의 사용자에 의해 입력되지 않은 구성 정보를 포함하는, 사용자 선호도들 및/또는 디바이스 구성 정보를 설정하는 방법. - 제 4 항에 있어서,
상기 제 2 사용자 디바이스는 상기 제 1 사용자 디바이스로 상기 제 2 사용자 디바이스의 상기 구성 정보를 전송하기 전에 상기 사용자와의 상호작용의 이력에 기초하여 상기 제 2 사용자 디바이스의 상기 구성 정보를 업데이트하는, 사용자 선호도들 및/또는 디바이스 구성 정보를 설정하는 방법. - 제 4 항에 있어서,
상기 사용자에 의해 입력되지 않은 상기 구성 정보는 상기 제 2 사용자 디바이스가 상기 사용자와의 상호작용의 이력에 기초하여 학습한 상기 사용자의 선호도들을 포함하는, 사용자 선호도들 및/또는 디바이스 구성 정보를 설정하는 방법. - 제 4 항에 있어서,
상기 사용자에 의해 입력되지 않은 상기 구성 정보는 상기 사용자의 선호도들이 아닌 상기 제 2 사용자 디바이스의 하나 이상의 구성들을 포함하는, 사용자 선호도들 및/또는 디바이스 구성 정보를 설정하는 방법. - 제 4 항에 있어서,
상기 사용자에 의해 입력되지 않은 상기 구성 정보는 상기 제 2 사용자 디바이스가 복수의 사용자들과의 상호작용들의 이력에 기초하여 학습한 상기 제 2 사용자 디바이스의 하나 이상의 구성들을 포함하는, 사용자 선호도들 및/또는 디바이스 구성 정보를 설정하는 방법. - 제 1 항에 있어서,
상기 제 2 사용자 디바이스는 상기 제 1 사용자 디바이스로 상기 제 2 사용자 디바이스의 상기 선호도 정보를 전송하기 전에 상기 제 2 사용자 디바이스의 사용자와의 상호작용의 이력에 기초하여 상기 제 2 사용자 디바이스의 상기 선호도 정보를 업데이트하는, 사용자 선호도들 및/또는 디바이스 구성 정보를 설정하는 방법. - 제 1 항에 있어서,
상기 업데이트하는 단계는 상기 제 1 사용자 디바이스의 초기 구성을 포함하는, 사용자 선호도들 및/또는 디바이스 구성 정보를 설정하는 방법. - 제 1 항에 있어서,
상기 검출하는 단계는 상기 로컬 무선 네트워크의 초기 검출을 포함하는, 사용자 선호도들 및/또는 디바이스 구성 정보를 설정하는 방법. - 제 1 항에 있어서,
상기 제 1 사용자 디바이스 및 상기 제 2 사용자 디바이스는 상기 로컬 무선 네트워크의 사용자에게 속하는, 사용자 선호도들 및/또는 디바이스 구성 정보를 설정하는 방법. - 제 1 항에 있어서,
상기 제 2 사용자 디바이스의 상기 구성 정보 및/또는 선호도 정보는 상기 제 2 사용자 디바이스에 설치된 하나 이상의 애플리케이션들의 구성 정보 및/또는 선호도 정보를 포함하는, 사용자 선호도들 및/또는 디바이스 구성 정보를 설정하는 방법. - 제 1 항에 있어서,
상기 제 2 사용자 디바이스의 상기 구성 정보 및/또는 선호도 정보는 상기 제 2 사용자 디바이스의 모든 구성 정보 및/또는 선호도 정보를 포함하는, 사용자 선호도들 및/또는 디바이스 구성 정보를 설정하는 방법. - 사용자 선호도들 및/또는 디바이스 구성 정보를 설정하는 장치로서,
제 1 사용자 디바이스에서, 로컬 무선 네트워크를 검출하고, 상기 로컬 무선 네트워크 내의 제 2 사용자 디바이스로부터, 상기 제 1 사용자 디바이스와 유사한 기능을 갖는 상기 제 2 사용자 디바이스의 구성 정보 및/또는 선호도 정보를 수신하도록 구성된 트랜시버; 및
적어도 상기 제 2 사용자 디바이스로부터 수신된 상기 구성 정보 및/또는 선호도 정보의 서브세트로 상기 제 1 사용자 디바이스의 구성 정보 및/또는 선호도 정보를 업데이트하도록 구성된 프로세서로서, 상기 제 1 사용자 디바이스의 상기 구성 정보 및/또는 선호도 정보는 상기 제 1 사용자 디바이스에 저장되는, 상기 프로세서를 포함하고,
상기 프로세서는 사용자로부터 상기 제 1 사용자 디바이스의 상기 구성 정보 및/또는 선호도 정보를 업데이트하라는 명령을 수신하지 않고 상기 제 1 사용자 디바이스의 상기 구성 정보 및/또는 선호도 정보를 업데이트하는, 사용자 선호도들 및/또는 디바이스 구성 정보를 설정하는 장치. - 제 15 항에 있어서,
상기 제 2 사용자 디바이스는 상기 제 1 사용자 디바이스의 능력 및/또는 구성 정보에 기초하여 그것이 상기 제 1 사용자 디바이스와 유사한 기능을 갖는다고 결정하고, 상기 결정에 응답하여, 상기 제 1 사용자 디바이스로 상기 제 2 사용자 디바이스의 상기 구성 정보 및/또는 선호도 정보를 전송하는, 사용자 선호도들 및/또는 디바이스 구성 정보를 설정하는 장치. - 제 16 항에 있어서,
상기 제 2 사용자 디바이스는 상기 제 2 사용자 디바이스의 능력 및/또는 구성 정보를 나타내는 값들과 오버랩핑하는 상기 제 1 사용자 디바이스의 능력 및/또는 구성 정보를 나타내는 값들에 기초하여 그것이 상기 제 1 사용자 디바이스와 유사한 기능을 갖는다고 결정하는, 사용자 선호도들 및/또는 디바이스 구성 정보를 설정하는 장치. - 제 15 항에 있어서,
상기 제 2 사용자 디바이스의 상기 구성 정보는 상기 제 2 사용자 디바이스의 사용자에 의해 입력되지 않은 구성 정보를 포함하는, 사용자 선호도들 및/또는 디바이스 구성 정보를 설정하는 장치. - 제 18 항에 있어서,
상기 제 2 사용자 디바이스는 상기 제 1 사용자 디바이스로 상기 제 2 사용자 디바이스의 상기 구성 정보를 전송하기 전에 상기 사용자와의 상호작용의 이력에 기초하여 상기 제 2 사용자 디바이스의 상기 구성 정보를 업데이트하는, 사용자 선호도들 및/또는 디바이스 구성 정보를 설정하는 장치. - 제 18 항에 있어서,
상기 사용자에 의해 입력되지 않은 상기 구성 정보는 상기 제 2 사용자 디바이스가 상기 사용자와의 상호작용의 이력에 기초하여 학습한 상기 사용자의 선호도들을 포함하는, 사용자 선호도들 및/또는 디바이스 구성 정보를 설정하는 장치. - 제 18 항에 있어서,
상기 사용자에 의해 입력되지 않은 상기 구성 정보는 상기 사용자의 선호도들이 아닌 상기 제 2 사용자 디바이스의 하나 이상의 구성들을 포함하는, 사용자 선호도들 및/또는 디바이스 구성 정보를 설정하는 장치. - 제 18 항에 있어서,
상기 사용자에 의해 입력되지 않은 상기 구성 정보는 상기 제 2 사용자 디바이스가 복수의 사용자들과의 상호작용들의 이력에 기초하여 학습한 상기 제 2 사용자 디바이스의 하나 이상의 구성들을 포함하는, 사용자 선호도들 및/또는 디바이스 구성 정보를 설정하는 장치. - 제 15 항에 있어서,
상기 제 2 사용자 디바이스는 상기 제 1 사용자 디바이스로 상기 제 2 사용자 디바이스의 상기 선호도 정보를 전송하기 전에 상기 제 2 사용자 디바이스의 사용자와의 상호작용의 이력에 기초하여 상기 제 2 사용자 디바이스의 상기 선호도 정보를 업데이트하는, 사용자 선호도들 및/또는 디바이스 구성 정보를 설정하는 장치. - 제 15 항에 있어서,
상기 업데이트하도록 구성된 프로세서는 상기 제 1 사용자 디바이스의 초기 구성을 업데이트하도록 구성되는 상기 프로세서를 포함하는, 사용자 선호도들 및/또는 디바이스 구성 정보를 설정하는 장치. - 제 15 항에 있어서,
상기 검출하도록 구성된 송수신기는 상기 로컬 무선 네트워크의 초기 검출을 수행하도록 구성되는 상기 송수신기를 포함하는, 사용자 선호도들 및/또는 디바이스 구성 정보를 설정하는 장치. - 제 15 항에 있어서,
상기 제 1 사용자 디바이스 및 상기 제 2 사용자 디바이스는 상기 로컬 무선 네트워크의 사용자에게 속하는, 사용자 선호도들 및/또는 디바이스 구성 정보를 설정하는 장치. - 제 15 항에 있어서,
상기 제 2 사용자 디바이스의 상기 구성 정보 및/또는 선호도 정보는 상기 제 2 사용자 디바이스에 설치된 하나 이상의 애플리케이션들의 구성 정보 및/또는 선호도 정보를 포함하는, 사용자 선호도들 및/또는 디바이스 구성 정보를 설정하는 장치. - 제 15 항에 있어서,
상기 제 2 사용자 디바이스의 상기 구성 정보 및/또는 선호도 정보는 상기 제 2 사용자 디바이스의 모든 구성 정보 및/또는 선호도 정보를 포함하는, 사용자 선호도들 및/또는 디바이스 구성 정보를 설정하는 장치. - 사용자 선호도들 및/또는 디바이스 구성 정보를 설정하는 장치로서,
제 1 사용자 디바이스에 의해, 로컬 무선 네트워크를 검출하는 수단;
상기 로컬 무선 네트워크 내의 제 2 사용자 디바이스로부터, 상기 제 1 사용자 디바이스와 유사한 기능을 갖는 상기 제 2 사용자 디바이스의 구성 정보 및/또는 선호도 정보를 수신하는 수단; 및
적어도 상기 제 2 사용자 디바이스로부터 수신된 상기 구성 정보 및/또는 선호도 정보의 서브세트로 상기 제 1 사용자 디바이스의 구성 정보 및/또는 선호도 정보를 업데이트하는 수단으로서, 상기 제 1 사용자 디바이스의 상기 구성 정보 및/또는 선호도 정보는 상기 제 1 사용자 디바이스에 저장되는, 상기 구성 정보 및/또는 선호도 정보를 업데이트하는 수단을 포함하고,
상기 업데이트하는 수단은 사용자로부터 상기 제 1 사용자 디바이스의 상기 구성 정보 및/또는 선호도 정보를 업데이트하라는 명령을 수신하지 않고 상기 제 1 사용자 디바이스의 상기 구성 정보 및/또는 선호도 정보를 업데이트하는, 사용자 선호도들 및/또는 디바이스 구성 정보를 설정하는 장치. - 사용자 선호도들 및/또는 디바이스 구성 정보를 설정하기 위한 비일시적 컴퓨터 판독가능 매체로서,
제 1 사용자 디바이스로 하여금, 로컬 무선 네트워크를 검출하게 하는 적어도 하나의 명령;
상기 제 1 사용자 디바이스로 하여금, 상기 로컬 무선 네트워크 내의 제 2 사용자 디바이스로부터, 상기 제 1 사용자 디바이스와 유사한 기능을 갖는 상기 제 2 사용자 디바이스의 구성 정보 및/또는 선호도 정보를 수신하게 하는 적어도 하나의 명령; 및
상기 제 1 사용자 디바이스로 하여금, 적어도 상기 제 2 사용자 디바이스로부터 수신된 상기 구성 정보 및/또는 선호도 정보의 서브세트로 상기 제 1 사용자 디바이스의 구성 정보 및/또는 선호도 정보를 업데이트하게 하는 적어도 하나의 명령으로서, 상기 제 1 사용자 디바이스의 상기 구성 정보 및/또는 선호도 정보는 상기 제 1 사용자 디바이스에 저장되는, 상기 구성 정보 및/또는 선호도 정보를 업데이트하게 하는 적어도 하나의 명령을 포함하고,
상기 제 1 사용자 디바이스는 사용자로부터 상기 제 1 사용자 디바이스의 상기 구성 정보 및/또는 선호도 정보를 업데이트하라는 명령을 수신하지 않고 상기 제 1 사용자 디바이스의 상기 구성 정보 및/또는 선호도 정보를 업데이트하는, 비일시적 컴퓨터 판독가능 매체.
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201461987816P | 2014-05-02 | 2014-05-02 | |
US61/987,816 | 2014-05-02 | ||
US14/685,059 US9704113B2 (en) | 2014-05-02 | 2015-04-13 | Method and apparatus for setting user preferences or device configuration |
US14/685,059 | 2015-04-13 | ||
PCT/US2015/025786 WO2015167797A1 (en) | 2014-05-02 | 2015-04-14 | Method and apparatus for setting user preferences or device configuration |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20160148016A KR20160148016A (ko) | 2016-12-23 |
KR102366632B1 true KR102366632B1 (ko) | 2022-02-22 |
Family
ID=54356019
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020167033810A KR102366632B1 (ko) | 2014-05-02 | 2015-04-14 | 사용자 선호도들 또는 디바이스 구성을 설정하는 방법 및 장치 |
Country Status (7)
Country | Link |
---|---|
US (1) | US9704113B2 (ko) |
EP (1) | EP3138054A1 (ko) |
JP (1) | JP6622716B2 (ko) |
KR (1) | KR102366632B1 (ko) |
CN (1) | CN106256105B (ko) |
CA (1) | CA2944901C (ko) |
WO (1) | WO2015167797A1 (ko) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180057740A (ko) * | 2013-08-29 | 2018-05-30 | 콘비다 와이어리스, 엘엘씨 | 사물 인터넷 이벤트 관리 시스템 및 방법 |
US10802938B2 (en) * | 2014-09-23 | 2020-10-13 | At&T Intellectual Property I, L.P. | Accessory setting service |
KR20160137224A (ko) * | 2015-05-22 | 2016-11-30 | 삼성전자주식회사 | 외부 장치를 제어하기 위한 장치 및 방법 |
EP3395010B1 (en) * | 2015-12-26 | 2020-08-26 | Intel Corporation | Distributed framework for resilient machine-to-machine system management |
US10049088B1 (en) * | 2016-05-26 | 2018-08-14 | Kirio Inc. | Automated configuration system for complex system requiring exhaustive custom programming |
US10547469B2 (en) * | 2016-07-29 | 2020-01-28 | International Business Machines Corporation | System, method, and recording medium for adjusting ambience of a room |
US10382272B1 (en) * | 2016-09-30 | 2019-08-13 | Juniper Networks, Inc. | Translating configuration information for network devices |
CN106850222B (zh) * | 2017-01-04 | 2020-11-17 | 普联技术有限公司 | 无线组网设备的配置同步方法、无线组网设备与系统 |
US10754673B2 (en) * | 2017-05-08 | 2020-08-25 | Google Llc | Smart device configuration guidance via automated assistant interface of separate client device |
CN108269196A (zh) * | 2017-12-01 | 2018-07-10 | 优视科技有限公司 | 加入网络社群的方法、装置及计算机设备 |
US10157396B1 (en) * | 2017-12-19 | 2018-12-18 | Capital One Services, Llc | Allocation of service provider resources based on a capacity to provide the service |
CN110351225B (zh) * | 2018-04-03 | 2021-09-24 | 腾讯科技(深圳)有限公司 | 硬件设备的联网方法、系统,计算设备及可读存储介质 |
US11223521B2 (en) * | 2018-10-10 | 2022-01-11 | Sony Group Corporation | Setting up a new television linked with an existing television |
CN111917824B (zh) * | 2020-06-19 | 2023-05-26 | 深圳奇迹智慧网络有限公司 | 物联设备配置方法、装置、计算机设备和存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005149444A (ja) * | 2003-11-20 | 2005-06-09 | Sony Ericsson Mobilecommunications Japan Inc | 電子機器及びシステム |
US20140012913A1 (en) * | 2012-07-05 | 2014-01-09 | Devrim Varoglu | Peer-Peer Device Activation and Setup |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20010041425A (ko) | 1998-12-29 | 2001-05-15 | 요트.게.아. 롤페즈 | 분포된 네트워크 장치를 갖는 홈 제어 시스템 |
JP2002163165A (ja) * | 2000-11-28 | 2002-06-07 | Kyocera Corp | ネットワークデバイスの管理方法及びネットワークデバイス |
CN1262955C (zh) * | 2001-01-23 | 2006-07-05 | 索尼公司 | 通信设备及方法,电子装置及控制方法 |
WO2003014867A2 (en) * | 2001-08-03 | 2003-02-20 | John Allen Ananian | Personalized interactive digital catalog profiling |
US20030120750A1 (en) | 2001-12-26 | 2003-06-26 | David Gaxiola | Device based detection of user preferences in a home networking environment |
US7873384B2 (en) * | 2005-09-01 | 2011-01-18 | Broadcom Corporation | Multimode mobile communication device with configuration update capability |
US20100228726A1 (en) | 2009-02-06 | 2010-09-09 | Slinker Scott W | Determining associative intent in a database containing linked entities |
US8606232B2 (en) * | 2009-06-08 | 2013-12-10 | Qualcomm Incorporated | Method and system for performing multi-stage virtual SIM provisioning and setup on mobile devices |
KR101703303B1 (ko) * | 2010-12-23 | 2017-02-06 | 한국전자통신연구원 | 시스템 환경 관리 장치 및 관리 방법 |
US8850037B2 (en) | 2012-05-24 | 2014-09-30 | Fmr Llc | Communication session transfer between devices |
US9131266B2 (en) | 2012-08-10 | 2015-09-08 | Qualcomm Incorporated | Ad-hoc media presentation based upon dynamic discovery of media output devices that are proximate to one or more users |
US9319409B2 (en) * | 2013-02-14 | 2016-04-19 | Sonos, Inc. | Automatic configuration of household playback devices |
CN103268085B (zh) | 2013-04-11 | 2016-05-25 | 四川长虹电器股份有限公司 | 一种基于个人云平台的智能家电互动系统的工作方法 |
CN103546774A (zh) * | 2013-10-21 | 2014-01-29 | Tcl集团股份有限公司 | 一种实现无缝访问媒体文件的方法及系统 |
-
2015
- 2015-04-13 US US14/685,059 patent/US9704113B2/en active Active
- 2015-04-14 JP JP2016565060A patent/JP6622716B2/ja active Active
- 2015-04-14 CA CA2944901A patent/CA2944901C/en active Active
- 2015-04-14 CN CN201580021653.0A patent/CN106256105B/zh active Active
- 2015-04-14 WO PCT/US2015/025786 patent/WO2015167797A1/en active Application Filing
- 2015-04-14 EP EP15720508.9A patent/EP3138054A1/en not_active Ceased
- 2015-04-14 KR KR1020167033810A patent/KR102366632B1/ko active IP Right Grant
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005149444A (ja) * | 2003-11-20 | 2005-06-09 | Sony Ericsson Mobilecommunications Japan Inc | 電子機器及びシステム |
US20140012913A1 (en) * | 2012-07-05 | 2014-01-09 | Devrim Varoglu | Peer-Peer Device Activation and Setup |
Also Published As
Publication number | Publication date |
---|---|
WO2015167797A1 (en) | 2015-11-05 |
US20150319038A1 (en) | 2015-11-05 |
CA2944901A1 (en) | 2015-11-05 |
EP3138054A1 (en) | 2017-03-08 |
CN106256105B (zh) | 2020-04-21 |
JP6622716B2 (ja) | 2019-12-18 |
JP2017520138A (ja) | 2017-07-20 |
US9704113B2 (en) | 2017-07-11 |
KR20160148016A (ko) | 2016-12-23 |
CA2944901C (en) | 2023-10-31 |
CN106256105A (zh) | 2016-12-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102366632B1 (ko) | 사용자 선호도들 또는 디바이스 구성을 설정하는 방법 및 장치 | |
KR102552789B1 (ko) | 사물 인터넷(iot)네트워크에서 이벤트 사전을 자동으로 생성하기 위한 방법 및 장치 | |
US9628691B2 (en) | Method and apparatus for identifying a physical IoT device | |
EP3047616B1 (en) | A user interactive application enabled gateway | |
EP3146733B1 (en) | Triggering commands on a target device in response to broadcasted event notifications | |
US20150071052A1 (en) | Reconfiguring a headless wireless device | |
EP3044998B1 (en) | Increasing power savings through intelligent synchronizing of data | |
WO2016070106A1 (en) | Dynamic mobile ad hoc internet of things (iot) gateway | |
WO2016007507A1 (en) | Method and apparatus for incrementally sharing greater amounts of information between user devices | |
EP3114808A1 (en) | Using end-user federated login to detect a breach in a key exchange encrypted channel | |
EP3152882B1 (en) | Determining trust levels on a device receiving authorization |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |