KR20190075644A - 네트워크에서 노드를 제어하는 전자 장치 및 제어 방법 - Google Patents

네트워크에서 노드를 제어하는 전자 장치 및 제어 방법 Download PDF

Info

Publication number
KR20190075644A
KR20190075644A KR1020170177396A KR20170177396A KR20190075644A KR 20190075644 A KR20190075644 A KR 20190075644A KR 1020170177396 A KR1020170177396 A KR 1020170177396A KR 20170177396 A KR20170177396 A KR 20170177396A KR 20190075644 A KR20190075644 A KR 20190075644A
Authority
KR
South Korea
Prior art keywords
various embodiments
mesh network
role
provisioning
node
Prior art date
Application number
KR1020170177396A
Other languages
English (en)
Other versions
KR102331886B1 (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 삼성전자주식회사
Priority to KR1020170177396A priority Critical patent/KR102331886B1/ko
Priority to US16/203,774 priority patent/US10932107B2/en
Priority to CN201811547158.5A priority patent/CN109951362B/zh
Priority to EP18215450.0A priority patent/EP3503670B1/en
Publication of KR20190075644A publication Critical patent/KR20190075644A/ko
Application granted granted Critical
Publication of KR102331886B1 publication Critical patent/KR102331886B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/50Service provisioning or reconfiguring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0806Configuration setting for initial configuration or provisioning, e.g. plug-and-play
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/005Discovery of network devices, e.g. terminals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/02Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
    • H04W84/10Small scale networks; Flat hierarchical networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/02Terminal devices
    • H04W88/04Terminal devices adapted for relaying to or from another terminal or user

Abstract

메쉬 네트워크를 형성하는 전자 장치 및 동작 방법이 개시된다. 본 문서의 다양한 실시예들에 따른 전자 장치는, 블루투스 저 에너지 무선 통신을 제공하도록 설정된 무선 통신 회로 및 상기 무선 통신 회로와 동작이 가능하도록 연결된 제어 회로를 포함하고, 상기 제어 회로는, 상기 무선 통신 회로를 이용하여 복수의 외부 장치들과 메쉬 네트워크를 형성하고, 상기 메쉬 네트워크를 형성하는 것은, 외부 장치를, 상기 메쉬 네트워크 상의 노드로 만드는 프로비저닝 프로세스를 수행하는 것을 포함하고, 상기 무선 통신 회로를 이용하여, 상기 메쉬 네트워크 상의 제1 장치로부터, 상기 제1 장치와 연관된 제1 식별 정보(ID) 및 상기 메쉬 네트워크 상에 없는 제2 장치와 연관된 제2 식별 정보(ID)를 포함하는 제1 정보를 수신하고, 상기 제1 장치가 상기 프로비저닝 프로세스를 수행할 수 있는지를 판단하고, 상기 제2 장치에 대한 상기 프로비저닝 프로세스를 수행하는 역할(role)을 상기 제1 장치에 제공하고, 상기 제1 장치로부터, 상기 무선 통신 회로를 이용하여, 상기 제2 장치에 대한 상기 프로비저닝 프로세스의 결과, 및 상기 제2 장치와 연관된 장치 정보를 포함하는 제2 정보를 수신하도록 설정될 수 있다. 다양한 실시 예들이 가능할 수 있다.

Description

네트워크에서 노드를 제어하는 전자 장치 및 제어 방법{ELECTRONIC DEVICE CONTRROLLING NODE IN A NETWORK AND CONTROL METHOD THEREOF}
본 문서의 다양한 실시 예들은, 네트워크에서 노드를 제어하는 전자 장치 및 제어 방법에 관한 것이다.
일정 거리 내에 위치한 다수의 노드들로 이루어지는 다양한 네트워크들이 있다. 이러한 노드들 간에는, 예를 들어, 근거리 통신 프로토콜을 통해 통신을 수행할 수 있다. 이러한 네트워크에서 노드들 간 근거리 통신 프로토콜을 통해 통신을 하는 경우 릴레이 노드가 이용될 수 있다. 상기 릴레이 노드는 노드들 간에 통신을 중계할 수 있고, 이로 인해 노드들 간에 통신거리를 확장시킬 수 있다.
블루투스 저 에너지(bluetooth low energy: BLE) 메쉬 네트워크(mesh network)는 블루투스 저 에너지 기술을 기반으로 근거리에 위치하는 전자 장치들로 구성된 네트워크이다. 블루투스 저 에너지 메쉬 네트워크에서는 짧은 통신거리를 보완하기 위해 릴레이(relay) 동작(다른 말로, 기능)을 수행 할 수 있는 릴레이 노드를 포함하여, 상기 릴레이 노드를 통해 통신거리를 확장할 수 있다.
블루투스 저 에너지 메쉬 네트워크는 적어도 하나의, 프로비저너(provisioner) 역할(feature)을 수행하는 전자 장치를 포함할 수 있다. 프로비저너는, 프로비저너의 스캔 커버리지 내에 포함되는 적어도 하나의 장치(예: 프로비저닝 되지 않은 장치(unprovisioned device)를 검출할 수 있다. 프로비저너는, 검출된 적어도 하나의 장치를 블루투스 저 에너지 메쉬 네트워크에 참여시키기 위한 프로비저닝 프로세스(예: 프로비저닝 동작)를 수행할 수 있다.
블루투스 저 에너지 메쉬 네트워크를 형성하는 노드는 릴레이 역할(relay feature), 프록시 역할(proxy feature), 저전력 역할(low power feature) 및 프렌드 역할(friend feature) 중 적어도 하나의 역할을 지원할 수(또는, 가질 수) 있다.
블루투스 저 에너지 메쉬 네트워크는 프로비저너를 포함할 수 있다. 예를 들어, 블루투스 저 에너지 메쉬 네트워크에 포함되는 노드는 프로비저너의 스캔 커버리지(이하, 간략히 커버리지로 언급하기로 한다) 내에 포함되거나 포함되지 않을 수 있다. 블루투스 저 에너지 메쉬 네트워크 주변에 위치하는(예: 블루투스 저 에너지 메쉬 네트워크에 포함되지 않는) 외부 장치는, 블루투스 저 에너지 메쉬 네트워크에 포함되는 노드 중 프로비저너가 아닌 다른 노드의 커버리지에 포함되는 경우가 있을 수 있다. 블루투스 저 에너지 메쉬 네트워크 주변에 위치하는 외부 장치는, 블루투스 저 에너지 메쉬 네트워크에 포함되는 노드의 커버리지에 포함됨에도 불구하고, 프로비저너의 커버리지에 포함되지 못하여 블루투스 저 에너지 메쉬 네트워크의 노드로 포함될 수 없다.
본 문서의 다양한 실시예들에 따르면, 프로비저너가 프로비저닝 역할을 지원하는 노드에 대한 프로비저닝 역할을 제공하여, 프로비저너의 커버리지에 포함되지 않는 외부 장치를 메쉬 네트워크(예: 블루투스 저 에너지 메쉬 네트워크)의 노드로서 포함할 수 있는 전자 장치가 제공될 수 있다.
본 문서의 다양한 실시예들에 따르면, 프로비저너로부터 프로비저닝 역할을 제공받아 외부 장치에 대한 프로비저닝 프로세스를 수행할 수 있는 전자 장치가 제공될 수 있다,
본 문서의 다양한 실시예들에 따른 전자 장치는, 블루투스 저 에너지 무선 통신을 제공하도록 설정된 무선 통신 회로 및 상기 무선 통신 회로와 동작이 가능하도록 연결된 제어 회로를 포함하고, 상기 제어 회로는, 상기 무선 통신 회로를 이용하여 복수의 외부 장치들과 메쉬 네트워크를 형성(form)하고, 상기 메쉬 네트워크를 형성하는 것은, 외부 장치를, 상기 메쉬 네트워크 상의 노드로 만드는 프로비저닝 프로세스를 수행하는 것을 포함하고, 상기 무선 통신 회로를 이용하여, 상기 메쉬 네트워크 상의 제1 장치로부터, 상기 제1 장치와 연관된 제1 식별 정보(identification) 및 상기 메쉬 네트워크 상에 없는 제2 장치와 연관된 제2 식별 정보를 포함하는 제1 정보를 수신하고, 상기 제1 장치가 상기 프로비저닝 프로세스를 수행할 수 있는지를 판단하고, 상기 제2 장치에 대한 상기 프로비저닝 프로세스를 수행하는 역할을 상기 제1 장치에 제공하고, 상기 제1 장치로부터, 상기 무선 통신 회로를 이용하여, 상기 제2 장치에 대한 상기 프로비저닝 프로세스의 결과, 및 상기 제2 장치와 연관된 장치 정보를 포함하는 제2 정보를 수신하도록 설정될 수 있다.
본 문서의 다양한 실시예들에 따른 컴퓨터 판독 가능한 기록 매체는, 적어도 하나의 동작을 포함할 수 있고, 상기 적어도 하나의 동작은, 상기 무선 통신 회로를 이용하여 복수의 외부 장치들과 메쉬 네트워크를 형성하고, 상기 메쉬 네트워크를 형성하는 것은, 외부 장치를, 상기 메쉬 네트워크 상의 노드로 만드는 프로비저닝 프로세스를 수행하는 것을 포함하고, 상기 무선 통신 회로를 이용하여, 상기 메쉬 네트워크 상의 제1 장치로부터, 상기 제1 장치와 연관된 제1 식별 정보 및 상기 메쉬 네트워크 상에 없는 제2 장치와 연관된 제2 식별 정보를 포함하는 제1 정보를 수신하고, 상기 제1 장치가 상기 프로비저닝 프로세스를 수행할 수 있는지를 판단하고, 상기 제2 장치에 대한 상기 프로비저닝 프로세스를 수행하는 역할을 상기 제1 장치에 제공하고, 상기 제1 장치로부터, 상기 무선 통신 회로를 이용하여, 상기 제2 장치에 대한 상기 프로비저닝 프로세스의 결과, 및 상기 제2 장치와 연관된 장치 정보를 포함하는 제2 정보를 수신하는 동작을 포함할 수 있다.
본 문서의 다양한 실시예들에 따른 전자 장치는, 블루투스 저 에너지 무선 통신을 제공하도록 설정된 무선 통신 회로, 상기 전자 장치와 연관된 제1 식별 정보를 저장하도록 설정된 메모리 및 상기 무선 통신 회로 및 상기 메모리와 동작이 가능하도록 연결된 제어 회로를 포함하고, 상기 제어 회로는, 상기 무선 통신 회로를 이용하여, 상기 전자 장치가, 외부 장치를 메쉬 네트워크 상의 노드로 만드는 프로비저닝 프로세스에 의해, 프로비저너로서의 제1 장치를 포함하는 상기 메쉬 네트워크 상의 노드가 되도록 하고, 상기 무선 통신 회로를 통하여, 상기 메쉬 네트워크 상에 없는 제2 장치로부터 상기 제2 장치와 연관된 제2 식별 정보를 수신하고, 상기 무선 통신 회로를 통하여, 상기 제2 식별 정보를 상기 제1 장치에 전송하고, 상기 무선 통신 회로를 통하여, 상기 제1 장치로부터 상기 제2 장치에 대한 상기 프로비저닝 프로세스를 수행하는 역할을 수신하고, 상기 무선 통신 회로를 통하여, 상기 제2 장치에 대한 상기 프로비저닝 프로세스를 수행하고, 상기 무선 통신 회로를 통하여, 상기 제2 장치에 대한 상기 프로비저닝 프로세스의 결과 및 상기 제2 장치와 연관된 장치 정보를 포함하는 정보를 상기 제1 장치에 제공하도록 설정될 수 있다.
본 문서의 다양한 실시예들에 따르면, 전자 장치는 프로비저너의 커버리지에 포함되지 않는 외부 장치를 메쉬 네트워크(예: 블루투스 저 에너지 메쉬 네트워크)의 노드로 포함할 수 있으며, 프로비저너의 커버리지를 실질적으로 확장하여 메쉬 네트워크 사용자의 편의성을 증대시킬 수 있다.
본 문서의 다양한 실시예들에 따른 효과는 상기 기술된 효과로 제한되지 아니하며, 다양한 효과가 본 문서 상에 내재되어 있음은 통상의 기술자에게 자명하다.
도 1은, 다양한 실시예들에 따른, 네트워크 환경 내의 전자 장치의 블럭도이다.
도 2는, 다양한 실시예들에 따른, 메쉬 네트워크의 구성을 설명하기 위한 예시 도면이다.
도 3은, 다양한 실시예들에 따른, 메쉬 네트워크의 계층(layer) 구조를 설명하기 위한 예시 도면이다.
도 4는, 다양한 실시예들에 따른, 프로비저닝 프로세스를 수행하기 위하여 프로비저너가 프로비저닝 되지 않은 장치와의 링크를 설립하고 프로비저닝 프로세스를 수행하는 동작을 설명하기 위한 예시 도면이다.
도 5는, 다양한 실시예들에 따른, 프로비저너에 의해 수행되는 프로비저닝 프로세스의 상세한 동작을 설명하기 위한 예시 도면이다.
도 6a는, 다양한 실시예들에 따른, 프로비저너가 메쉬 네트워크에 포함된 노드로부터, 노드가 지원하는 적어도 하나의 역할에 대한 정보를 수신하는 동작을 설명하기 위한 예시 도면이다.
도 6b는, 다양한 실시예들에 따른, 노드가 지원하는 역할에 대한 정보를 전송하기 위한 데이터 필드를 설명하기 위한 예시 도면이다.
도 6c는, 다양한 실시예들에 따른, 메쉬 네트워크의 노드가 지원하는 역할의 현재 상태를 지시하는 데이터 필드를 설명하기 위한 예시 도면이다.
도 7은, 다양한 실시예들에 따른, 프로비저너의 동작을 설명하기 위한 예시 도면이다.
도 8a는, 다양한 실시예들에 따른, 프로비저닝 역할을 지원하는, 메쉬 네트워크를 형성하는 노드의 동작을 설명하기 위한 예시 도면이다.
도 8b는, 다양한 실시예들에 따른, 프로비저닝 프로세스에서 외부 장치로 전송되는 프로비저닝 데이터를 설명하기 위한 예시 도면이다.
도 9a는, 다양한 실시예들에 따른, 메쉬 네트워크에서 외부 장치를 메쉬 네트워크의 노드로 형성하는 동작을 설명하기 위한 예시 도면이다.
도 9b는, 다양한 실시예들에 따라, 프로비저너의 커버리지가 실질적으로 확장되는 예를 설명하기 위한 예시 도면이다.
도 9c 및 도 9d는, 다양한 실시예들에 따른, 전자 장치를 동작하는 방법을 설명하기 위한 예시 도면이다.
도 10a 및 도 10b는, 다양한 실시예들에 따른, 프로비저너가 외부 장치의 검출 메시지를 전송받은 후에, 프로비저너가 검출 메시지를 전송한 노드와 인접한 노드에 프로비저닝 역할을 제공하는 동작을 설명하기 위한 예시 도면이다.
도 11a 및 도 11b는, 다양한 실시예들에 따른, 프로비저너가 메쉬 네트워크를 형성하는 노드로부터 외부 장치의 검출 메시지를 전송받은 후에, 프로비저너가 메쉬 네트워크에 포함된 노드에 프로비저닝 역할을 제공하는 동작을 설명하기 위한 예시 도면이다.
도 12a 및 도 12b는, 다양한 실시예들에 따른, 프로비저너가 복수의 외부 장치들에 대한 검출 메시지를 전송받은 후에, 프로비저너가 검출 메시지를 전송한 노드에 프로비저닝 역할을 제공하는 동작을 설명하기 위한 예시 도면이다.
도 13a 내지 도 13c는, 다양한 실시예들에 따른, 프로비저너가 복수의 외부 장치들에 대한 검출 메시지를 전송받기 전에, 프로비저너가 프로비저닝 역할을 지원하는 모든 복수의 노드들에 대해 프로비저닝 역할을 제공하는 동작을 설명하기 위한 예시 도면이다.
도 14a 및 도 14b는, 다양한 실시예들에 따른, 프로비저너가 외부 장치에 대한 검출 메시지를 전송받기 전에, 지정된 시간 구간에 따라, 메쉬 네트워크를 형성하는 복수의 노드들에 대해 순차적으로 프로비저닝 역할을 제공하는 동작을 설명하기 위한 예시 도면이다.
도 15는, 다양한 실시예들에 따른, 프로비저너가 복수의 외부 장치들에 대한 검출 메시지를 전송받기 전에, 프로비저너가 상황 정보에 기반하여 메쉬 네트워크를 형성하는 노드에 프로비저닝 역할을 제공하는 동작을 설명하기 위한 예시 도면이다.
도 16a 내지 도 16c는, 다양한 실시예들에 따른, 프로비저너로서 동작하는 장치를 사용자 입력에 따라 결정하는 동작을 설명하기 위한 예시 도면이다
도 17a 내지 도 17d는, 다양한 실시예들에 따른, 프로비저닝 역할을 지원하는 복수의 노드들 중에서 사용자의 입력에 따라 어느 하나의 노드에 프로비저닝 역할이 제공되는 동작을 설명하기 위한 예시 도면이다
도 18은, 다양한 실시예들에 따른, 가정 내에서, 프로비저닝 역할이 제공된 노드에 의하여 프로비저너의 커버리지가 실질적으로 확장되는 동작을 설명하기 위한 예시 도면이다.
본 문서에서, 제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않는다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 문서의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 또한, 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함할 수 있다.
도 1은, 다양한 실시예들에 따른, 네트워크 환경(100) 내의 전자 장치(101)의 블럭도이다.
도 1을 참조하면, 네트워크 환경(100)에서 전자 장치(101)는 제 1 네트워크(198)(예: 근거리 무선 통신)를 통하여 전자 장치(102)와 통신하거나, 또는 제 2 네트워크(199)(예: 원거리 무선 통신)를 통하여 전자 장치(104) 또는 서버(108)와 통신할 수 있다. 일실시예에 따르면, 전자 장치(101)는 서버(108)를 통하여 전자 장치(104)와 통신할 수 있다. 일실시예에 따르면, 전자 장치(101)는 프로세서(120), 메모리(130), 입력 장치(150), 음향 출력 장치(155), 표시 장치(160), 오디오 모듈(170), 센서 모듈(176), 인터페이스(177), 햅틱 모듈(179), 카메라 모듈(180), 전력 관리 모듈(188), 배터리(189), 통신 모듈(190), 가입자 식별 모듈(196), 및 안테나 모듈(197)을 포함할 수 있다. 어떤 실시예에서는, 전자 장치(101)에는, 이 구성요소들 중 적어도 하나(예: 표시 장치(160) 또는 카메라 모듈(180))가 생략되거나 다른 구성 요소가 추가될 수 있다. 어떤 실시예에서는, 예를 들면, 표시 장치(160)(예: 디스플레이)에 임베디드된 센서 모듈(176)(예: 지문 센서, 홍채 센서, 또는 조도 센서)의 경우와 같이, 일부의 구성요소들이 통합되어 구현될 수 있다.
프로세서(120)는, 예를 들면, 소프트웨어(예: 프로그램(140))를 구동하여 프로세서(120)에 연결된 전자 장치(101)의 적어도 하나의 다른 구성요소(예: 하드웨어 또는 소프트웨어 구성요소)을 제어할 수 있고, 다양한 데이터 처리 및 연산을 수행할 수 있다. 프로세서(120)는 다른 구성요소(예: 센서 모듈(176) 또는 통신 모듈(190))로부터 수신된 명령 또는 데이터를 휘발성 메모리(132)에 로드하여 처리하고, 결과 데이터를 비휘발성 메모리(134)에 저장할 수 있다. 일실시예에 따르면, 프로세서(120)는 메인 프로세서(121)(예: 중앙 처리 장치 또는 어플리케이션 프로세서), 및 이와는 독립적으로 운영되고, 추가적으로 또는 대체적으로, 메인 프로세서(121)보다 저전력을 사용하거나, 또는 지정된 기능에 특화된 보조 프로세서(123)(예: 그래픽 처리 장치, 이미지 시그널 프로세서, 센서 허브 프로세서, 또는 커뮤니케이션 프로세서)를 포함할 수 있다. 여기서, 보조 프로세서(123)는 메인 프로세서(121)와 별개로 또는 임베디드되어 운영될 수 있다.
이런 경우, 보조 프로세서(123)는, 예를 들면, 메인 프로세서(121)가 인액티브(예: 슬립) 상태에 있는 동안 메인 프로세서(121)를 대신하여, 또는 메인 프로세서(121)가 액티브(예: 어플리케이션 수행) 상태에 있는 동안 메인 프로세서(121)와 함께, 전자 장치(101)의 구성요소들 중 적어도 하나의 구성요소(예: 표시 장치(160), 센서 모듈(176), 또는 통신 모듈(190))와 관련된 기능 또는 상태들의 적어도 일부를 제어할 수 있다. 일실시예에 따르면, 보조 프로세서(123)(예: 이미지 시그널 프로세서 또는 커뮤니케이션 프로세서)는 기능적으로 관련 있는 다른 구성 요소(예: 카메라 모듈(180) 또는 통신 모듈(190))의 일부 구성 요소로서 구현될 수 있다. 메모리(130)는, 전자 장치(101)의 적어도 하나의 구성요소(예: 프로세서(120) 또는 센서모듈(176))에 의해 사용되는 다양한 데이터, 예를 들어, 소프트웨어(예: 프로그램(140)) 및, 이와 관련된 명령에 대한 입력 데이터 또는 출력 데이터를 저장할 수 있다. 메모리(130)는, 휘발성 메모리(132) 또는 비휘발성 메모리(134)를 포함할 수 있다.
프로그램(140)은 메모리(130)에 저장되는 소프트웨어로서, 예를 들면, 운영 체제(142), 미들 웨어(144) 또는 어플리케이션(146)을 포함할 수 있다.
입력 장치(150)는, 전자 장치(101)의 구성요소(예: 프로세서(120))에 사용될 명령 또는 데이터를 전자 장치(101)의 외부(예: 사용자)로부터 수신하기 위한 장치로서, 예를 들면, 마이크, 마우스, 또는 키보드를 포함할 수 있다.
음향 출력 장치(155)는 음향 신호를 전자 장치(101)의 외부로 출력하기 위한 장치로서, 예를 들면, 멀티미디어 재생 또는 녹음 재생과 같이 일반적인 용도로 사용되는 스피커와 전화 수신 전용으로 사용되는 리시버를 포함할 수 있다. 일실시예에 따르면, 리시버는 스피커와 일체 또는 별도로 형성될 수 있다.
표시 장치(160)는 전자 장치(101)의 사용자에게 정보를 시각적으로 제공하기 위한 장치로서, 예를 들면, 디스플레이, 홀로그램 장치, 또는 프로젝터 및 해당 장치를 제어하기 위한 제어 회로를 포함할 수 있다. 일실시예에 따르면, 표시 장치(160)는 터치 회로(touch circuitry) 또는 터치에 대한 압력의 세기를 측정할 수 있는 압력 센서를 포함할 수 있다.
오디오 모듈(170)은 소리와 전기 신호를 쌍방향으로 변환시킬 수 있다. 일실시예에 따르면, 오디오 모듈(170)은, 입력 장치(150)를 통해 소리를 획득하거나, 음향 출력 장치(155), 또는 전자 장치(101)와 유선 또는 무선으로 연결된 외부 전자 장치(예: 전자 장치(102)(예: 스피커 또는 헤드폰))를 통해 소리를 출력할 수 있다.
센서 모듈(176)은 전자 장치(101)의 내부의 작동 상태(예: 전력 또는 온도), 또는 외부의 환경 상태에 대응하는 전기 신호 또는 데이터 값을 생성할 수 있다. 센서 모듈(176)은, 예를 들면, 제스처 센서, 자이로 센서, 기압 센서, 마그네틱 센서, 가속도 센서, 그립 센서, 근접 센서, 컬러 센서, IR(infrared) 센서, 생체 센서, 온도 센서, 습도 센서, 또는 조도 센서를 포함할 수 있다.
인터페이스(177)는 외부 전자 장치(예: 전자 장치(102))와 유선 또는 무선으로 연결할 수 있는 지정된 프로토콜을 지원할 수 있다. 일실시예에 따르면, 인터페이스(177)는 HDMI(high definition multimedia interface), USB(universal serial bus) 인터페이스, SD카드 인터페이스, 또는 오디오 인터페이스를 포함할 수 있다.
연결 단자(178)는 전자 장치(101)와 외부 전자 장치(예: 전자 장치(102))를 물리적으로 연결시킬 수 있는 커넥터, 예를 들면, HDMI 커넥터, USB 커넥터, SD 카드 커넥터, 또는 오디오 커넥터(예: 헤드폰 커넥터)를 포함할 수 있다.
햅틱 모듈(179)은 전기적 신호를 사용자가 촉각 또는 운동 감각을 통해서 인지할 수 있는 기계적인 자극(예: 진동 또는 움직임) 또는 전기적인 자극으로 변환할 수 있다. 햅틱 모듈(179)은, 예를 들면, 모터, 압전 소자, 또는 전기 자극 장치를 포함할 수 있다.
카메라 모듈(180)은 정지 영상 및 동영상을 촬영할 수 있다. 일실시예에 따르면, 카메라 모듈(180)은 하나 이상의 렌즈, 이미지 센서, 이미지 시그널 프로세서, 또는 플래시를 포함할 수 있다.
전력 관리 모듈(188)은 전자 장치(101)에 공급되는 전력을 관리하기 위한 모듈로서, 예를 들면, PMIC(power management integrated circuit)의 적어도 일부로서 구성될 수 있다.
배터리(189)는 전자 장치(101)의 적어도 하나의 구성 요소에 전력을 공급하기 위한 장치로서, 예를 들면, 재충전 불가능한 1차 전지, 재충전 가능한 2차 전지 또는 연료 전지를 포함할 수 있다.
통신 모듈(190)은 전자 장치(101)와 외부 전자 장치(예: 전자 장치(102), 전자 장치(104), 또는 서버(108))간의 유선 또는 무선 통신 채널의 설립, 및 설립된 통신 채널을 통한 통신 수행을 지원할 수 있다. 통신 모듈(190)은 프로세서(120)(예: 어플리케이션 프로세서)와 독립적으로 운영되는, 유선 통신 또는 무선 통신을 지원하는 하나 이상의 커뮤니케이션 프로세서를 포함할 수 있다. 일실시예에 따르면, 통신 모듈(190)은 무선 통신 모듈(192)(예: 셀룰러 통신 모듈, 근거리 무선 통신 모듈, 또는 GNSS(global navigation satellite system) 통신 모듈) 또는 유선 통신 모듈(194)(예: LAN(local area network) 통신 모듈, 또는 전력선 통신 모듈)을 포함하고, 그 중 해당하는 통신 모듈을 이용하여 제 1 네트워크(198)(예: 블루투스, WiFi direct 또는 IrDA(infrared data association) 같은 근거리 통신 네트워크) 또는 제 2 네트워크(199)(예: 셀룰러 네트워크, 인터넷, 또는 컴퓨터 네트워크(예: LAN 또는 WAN)와 같은 원거리 통신 네트워크)를 통하여 외부 전자 장치와 통신할 수 있다. 상술한 여러 종류의 통신 모듈(190)은 하나의 칩으로 구현되거나 또는 각각 별도의 칩으로 구현될 수 있다.
일실시예에 따르면, 무선 통신 모듈(192)은 가입자 식별 모듈(196)에 저장된 사용자 정보를 이용하여 통신 네트워크 내에서 전자 장치(101)를 구별 및 인증할 수 있다.
안테나 모듈(197)은 신호 또는 전력을 외부로 송신하거나 외부로부터 수신하기 위한 하나 이상의 안테나들을 포함할 수 있다. 일시예에 따르면, 통신 모듈(190)(예: 무선 통신 모듈(192))은 통신 방식에 적합한 안테나를 통하여 신호를 외부 전자 장치로 송신하거나, 외부 전자 장치로부터 수신할 수 있다.
상기 구성요소들 중 일부 구성요소들은 주변 기기들간 통신 방식(예: 버스, GPIO(general purpose input/output), SPI(serial peripheral interface), 또는 MIPI(mobile industry processor interface))를 통해 서로 연결되어 신호(예: 명령 또는 데이터)를 상호간에 교환할 수 있다.
일실시예에 따르면, 명령 또는 데이터는 제 2 네트워크(199)에 연결된 서버(108)를 통해서 전자 장치(101)와 외부의 전자 장치(104)간에 송신 또는 수신될 수 있다. 전자 장치(102, 104) 각각은 전자 장치(101)와 동일한 또는 다른 종류의 장치일 수 있다. 일실시예에 따르면, 전자 장치(101)에서 실행되는 동작들의 전부 또는 일부는 다른 하나 또는 복수의 외부 전자 장치에서 실행될 수 있다. 일실시예에 따르면, 전자 장치(101)가 어떤 기능이나 서비스를 자동으로 또는 요청에 의하여 수행해야 할 경우에, 전자 장치(101)는 기능 또는 서비스를 자체적으로 실행시키는 대신에 또는 추가적으로, 그와 연관된 적어도 일부 기능을 외부 전자 장치에게 요청할 수 있다. 상기 요청을 수신한 외부 전자 장치는 요청된 기능 또는 추가 기능을 실행하고, 그 결과를 전자 장치(101)로 전달할 수 있다. 전자 장치(101)는 수신된 결과를 그대로 또는 추가적으로 처리하여 요청된 기능이나 서비스를 제공할 수 있다. 이를 위하여, 예를 들면, 클라우드 컴퓨팅, 분산 컴퓨팅, 또는 클라이언트-서버 컴퓨팅 기술이 이용될 수 있다.
도 2는, 다양한 실시예들에 따른, 블루투스 저 에너지 메쉬 네트워크의 구성을 설명하기 위한 예시 도면이다.
도 2를 참조하면, 본 문서의 다양한 실시예들에 따른 블루투스 저 에너지 메쉬 네트워크(200)는, 복수의 노드들을 포함할 수 있다. 본 문서의 다양한 실시예들에 따른 블루투스 저 에너지 메쉬 네트워크(200)는, 릴레이 역할을 지원하는 릴레이 노드(예: 노드 S(220)), 프렌드 역할을 지원하는 프렌드 노드(예: 노드 O(240)), 저전력 역할을 지원하는 저전력 노드(예: 노드 M(230)) 및 프록시 역할을 지원하는 프록시 노드(예: 노드 T(210)) 중 적어도 하나를 포함할 수 있다.
본 문서의 다양한 실시예들에 따르면, 릴레이 역할은, 광고 베어러(advertising bearer)를 통해 메시지를 수신하고 재전송할 수 있는 능력(ability)을 의미할 수 있다. 상기 릴레이 역할에 의하여 네트워크의 커버리지가 더 넓어질 수 있다. 프록시 역할은, GATT(Generic Attribute Profile)와 광고 베어러들 사이에서의 메쉬 메시지들을 수신하고 재전송할 수 있는 능력을 의미할 수 있다. 저전력 역할은, 상당히 감소된 리시버 듀티 사이클들에서(at significantly reduced receiver duty cycles) 메쉬 네트워크 내에서(within) 동작할 수 있는 능력을 의미할 수 있으며, 프렌드 역할을 지원하는 노드와 함께 사용될 수 있다(in conjunction with a node supporting the friend feature). 프렌드 역할은, 저전력 역할을 지원하는 노드들로 예정된(destined for) 메시지들을 저장하여 저전력 역할을 지원하는 노드가 동작하도록 돕는 능력을 포함할 수 있다.
본 문서의 다양한 실시예들에 따른 블루투스 저 에너지 메쉬 네트워크(200)에 포함되는 다양한 노드들은, GATT에 기반한 베어러(GATT 베어러) 또는 광고(advertisement: ADV)에 기반한 베어러(ADV 베어러)를 통하여 메쉬 메시지를 송수신 할 수 있다. 본 문서의 다양한 실시예들에 따른 메쉬 네트워크(예: 블루투스 저 에너지 메쉬 네트워크(200))는, 역할을 지원하지 않은 노드(예: 노드 N(350))를 포함할 수 있다. 본 문서의 다양한 실시예들에 따른 메쉬 네트워크에 포함되는 적어도 하나의 노드는, 특정한 역할을 지원하지 않거나, 또는 적어도 하나의 역할을 지원할 수 있다.
본 문서의 다양한 실시예들에 따른 메쉬 네트워크를 형성하는 노드는, 하나 또는 그 이상의 역할들을 지원할 수 있다. 본 문서의 다양한 실시예들에 따르면, 하나 또는 그 이상의 역할들 중 일부의 역할만이, 프로비저너의 역할 제공에 따라 활성화(activation) 될 수 있다. 본 문서의 다양한 실시예들에 따르면, 하나 또는 그 이상의 역할들 모두 활성화 될 수 있다.
도 3은, 다양한 실시예들에 따른, 블루투스 저 에너지 메쉬 네트워크의 계층(layer) 구조를 설명하기 위한 예시 도면이다.
본 문서의 다양한 실시예들에 따르면, 블루투스 저 에너지 메쉬 네트워크 의 계층 구조(300)는, 베어러 계층(310), 네트워크 계층(320), 전송 계층(330), 액세스 계층(340) 및 모델 계층(350)을 포함할 수 있다.
본 문서의 다양한 실시예들에 따르면, 베어러 계층(310)은, 블루투스 저 에너지 메쉬 네트워크(예: 도 2의 블루투스 저 에너지 메쉬 네트워크(200))의 노드들 사이에서 네트워크 메시지들이 전송되는 방법을 정의할 수 있다.
본 문서의 다양한 실시예들에 따르면, 네트워크 계층(320)은, 하나 이상의 요소들로 향하는 전송 메시지들(transport messages)이 어드레스 되는 방법을 정의할 수 있다. 네트워크 계층(320)은 네트워크 메시지가 암호화되고 인증되는 방법을 정의할 수 있다. 네트워크 계층(320)은, 전송 PDU(packet data unit)들이 베어러 계층에 의해 전송될 수 있게 하는 네트워크 메시지 포맷을 정의할 수 있다.
본 문서의 다양한 실시예들에 따르면, 전송 계층(330)은, 상위(upper) 전송 계층과 하위(lower) 전송 계층을 포함할 수 있다. 상위 전송 계층은, 어플리케이션 데이터를 암호화, 해독(decrypt) 및 인증할 수 있다. 상위 전송 계층은, 액세스 메시지들에 대한 기밀성(confidentiality)을 제공할 수 있다. 하위 전송 계층은, 상위 전송 계층 메시지들이 다수의(multiple) 하위 전송 PDU들로 분할되고(segmented) 재형성되는(reassembled) 방법을 정의할 수 있다. 하위 전송 계층은, 분할 및 재형성을 관리(manage)하는 단일(single) 제어 메시지를 정의할 수 있다.
본 문서의 다양한 실시예들에 따르면, 액세스 계층(340)은, 상위 전송 계층이 상위 계층 어플리케이션들을 사용할 수 있는 방법을 정의할 수 있다. 액세스 계층(340)은, 어플리케이션 데이터의 포맷을 정의할 수 있다. 액세스 계층(340)은, 상위 전송 계층에서 수행되는 어플리케이션 데이터의 암호화(encryption) 및 복호화를 정의하고 제어할 수 있다.
본 문서의 다양한 실시예들에 따르면, 모델 계층(350)은, 전형적인(typical) 사용자 시나리오들의 동작을 표준화하는 데 사용되는 모델들 및 블루투스 메쉬 모델 사양(specification) 또는 다른 상위 계층 사양들에서 정의되는 모델들을 정의할 수 있다. 다른 상위 계층 모델 사양들은, 예를 들어, 라이팅(lighting) 또는 센서들에 대한 모델들을 포함할 수 있다.
도 4는, 다양한 실시예들에 따른, 프로비저닝 프로세스를 수행하기 위하여 프로비저너(예: 도 1의 전자 장치(101))가 프로비저닝 되지 않은 장치와의 링크를 설립하고 프로비저닝 프로세스를 수행하는 동작을 설명하기 위한 예시 도면이다.
도 4를 참조하면, 본 문서의 다양한 실시예들에 따른 프로비저너(400)(예: 도 1의 전자 장치(101))는, 동작 410에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 적어도 하나의 장치(예: 제1 장치(401) 및 제2 장치(402))를 검출하기 위한 스캐닝을 수행할 수 있다. 본 문서의 다양한 실시예들에 따르면, 저 전력 노드(예: 저전력 역할이 활성화 된 노드)는 스캐닝을 수행하지 못하도록 설정될 수 있다.
본 문서의 다양한 실시예들에 따른 프로비저너(400)(예: 도 1의 전자 장치(101))는, 동작 420 및 동작 430에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 적어도 하나의 장치(예: 제1 장치(401) 및 제2 장치(402))로부터 전송된 비콘 메시지를 수신할 수 있다. 본 문서의 다양한 실시예들에 따르면, 적어도 하나의 장치로부터 전송된 비콘 메시지는, 예를 들어, 적어도 하나의 장치의 UUID(universally unique identifier) 및/또는 적어도 하나의 장치가 지원하는 OOB(out of band) 정보를 포함할 수 있다. 본 문서의 다양한 실시예들에 따르면, 프로비저너(400)는, 수신된 UUID 및/또는 OOB 정보에 기반하여 비콘 메시지를 전송(예: 브로드캐스팅)한 장치를 식별할 수 있다. 본 문서의 다양한 실시예들에 따르면, 적어도 하나의 장치가 비콘 메시지를 출력하는 동작 또는 적어도 하나의 장치가 프로비저너로 비콘 메시지를 전송하는 동작은, "비커닝(beaconing)"이라는 용어로도 언급될 수 있다.
본 문서의 다양한 실시예들에 따른 프로비저너(400)(예: 도 1의 전자 장치(101))는, 동작 440에서, 프로비저닝 프로세스를 수행하기 위한 장치를 선택할 수 있다. 동작 440에서, 프로비저너(400)는, 예를 들어, 비콘 메시지의 수신을 통하여 식별된 장치들 중에서, 수신신호 세기(received signal strength indicator: RSSI) 등과 같은 파라미터에 기반하여 프로비저닝 프로세스를 수행할 장치를 선택할 수 있다. 본 문서의 다양한 실시예들에 따르면, 프로비저너(400)는, 사용자의 선택에 기반하여, 프로비저닝 프로세스를 수행하기 위한 장치를 선택할 수 있다. 본 문서의 다양한 실시예들에 따르면, 프로비저너(400)는, 지정된 정보에 기반하여, 프로비저닝 프로세스를 수행하기 위한 장치를 선택할 수 있다.
본 문서의 다양한 실시예들에 따른 프로비저너(400)(예: 도 1의 전자 장치(101))는, 동작 450에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 동작 440에 따라 선택된 장치(예: 제1 장치(401))와의 링크 설립을 위하여 링크 오픈 메시지를 제1 장치(401)에 전송할 수 있다. 링크 오픈 메시지는, 예를 들어, 제1 장치(401)의 UUID 및/또는 설립된 링크의 식별정보를 포함할 수 있다.
본 문서의 다양한 실시예들에 따른 프로비저너(400)(예: 도 1의 전자 장치(101))는, 동작 460에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 동작 450에 따라 제1 장치(401)에 전송된 링크 오픈 메시지에 대한 응답을 제1 장치(401)로부터 수신할 수 있다.
본 문서의 다양한 실시예들에 따른 프로비저너(400), 동작 470에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 제1 장치(401)와 프로비저닝 프로세스를 수행할 수 있다. 본 문서의 다양한 실시예들에 따른 프로비저닝 프로세스는, 프로비저너(400)에 의해, 프로비저닝 되지 않은 장치(unprovisioned device)(예: 제1 장치(401))를 메쉬 네트워크(예: 도 2의 블루투스 저 에너지 메쉬 네트워크(200))에 추가하는 프로세스를 의미할 수 있다. 본 문서의 다양한 실시예들에 따른 프로비저너(400)는, 프로비저닝 되지 않은 장치가 메쉬 노드가 되도록 허용하기 위하여, 프로비저닝 되지 않은 장치에 프로비저닝 데이터를 제공할 수 있다.
본 문서의 다양한 실시예들에 따른 프로비저너(400)는, 동작 480에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 동작 470에 따른 프로비저닝 프로세스가 종료하면, 제1 장치(401)로부터 링크 클로즈(close) 메시지를 수신할 수 있다.
본 문서의 다양한 실시예들에 따르면, 프로비저너(400)는, 스마트 폰 또는 다른 컴퓨팅 장치를 포함할 수 있다. 본 문서의 다양한 실시예들에 따르면, 네트워크(예: 도 2의 블루투스 저 에너지 메쉬 네트워크(200))상에서 프로비저닝 프로세스를 수행하기 위하여 단일의 프로비저너가 요구되지만, 다수의(multiple) 프로비저너가 사용될 수도 있다.
도 5는, 다양한 실시예들에 따른, 프로비저너에 의해 수행되는 프로비저닝 프로세스의 상세한 동작을 설명하기 위한 예시 도면이다.
도 5를 참조하면, 본 문서의 다양한 실시예들에 따른 프로비저너(400)(예: 도 1의 전자 장치(101))는, 동작 500에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 프로비저닝 되지 않은 장치(예: 제1 장치(401))에 대한 스캐닝을 수행할 수 있다.
본 문서의 다양한 실시예들에 따른 프로비저너(400)는, 동작 510에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 제1 장치(401)가 전송한 비콘 메시지를 수신할 수 있다. 비콘 메시지는, 예를 들어, 제1 장치(401)의 UUID 및/또는 OOB 정보를 포함할 수 있다.
본 문서의 다양한 실시예들에 따른 프로비저너(400)는, 동작 520에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 제1 장치(401)에 초대 메시지를 전송할 수 있다. 초대 메시지는, 예를 들어, 제1 장치(401)에게 프로비저닝 프로세스가 시작될 것임을 지시하기 위한 PDU를 포함할 수 있다.
본 문서의 다양한 실시예들에 따른 프로비저너(400)는, 동작 530에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 제1 장치(401)가 전송한 캐퍼빌리티 메시지를 수신할 수 있다. 캐퍼빌리티 메시지는, 예를 들어, 제1 장치(401)가 프로비저너(400)에게 제1 장치(401)에 의해 지원되는 프로비저닝 캐퍼빌리티들을 지시하기 위한 PDU를 포함할 수 있다. 캐퍼빌리티 메시지는, 예를 들면, 제1 장치(401)에 의해 지원되는 요소들의 수에 대한 정보, 제1 장치(401)에 의해 지원되는 알고리즘들에 대한 정보, 제1 장치(401)에 의해 지원되는 공용 키 타입들에 대한 정보, 제1 장치(401)에 의해 지원되는 스태틱(static) OOB 타입들에 대한 정보, 또는 제1 장치(401)에 의해 지원되는 출력 OOB의 최대 크기에 대한 정보 등 다양한 정보를 포함할 수 있다.
본 문서의 다양한 실시예들에 따른 프로비저너(400)는, 동작 540에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 제1 장치(401)와 공개 키(public key)를 교환할 수 있다. 본 문서의 다양한 실시예들에 따르면, 프로비저너(400)는, 제1 장치(401)에게 공개 키를 전송하기 위한 PDU를 전송할 수 있다. 프로비저너(400)는, 제1 장치(401)로부터 전송된 공개 키에 대응하는 응답을 수신할 수 있다. 본 문서의 다양한 실시예들에 따르면, 공개 키를 전송하기 위한 PDU는, 각각 32 옥텟(octets)의 크기를 가지는 공개 키 X 및 공개 키 Y를 포함할 수 있다.
본 문서의 다양한 실시예들에 따른 프로비저너(400)는, 동작 550에서, 제1 장치(401)와의 인증을 수행할 수 있다. 본 문서의 다양한 실시예들에 따르면, 동작 550에 따른 인증은, 세션 키를 연산하고 생성하는 동작을 포함할 수 있다.
본 문서의 다양한 실시예들에 따른 프로비저너(400)는, 동작 560에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 프로비저닝 데이터를 전송하기 위한 PDU를 제1 장치(401)에 전송할 수 있다. 본 문서의 다양한 실시예들에 따르면, 프로비저닝 데이터를 전송하기 위한 PDU는, 25 옥텟의 크기(다른 말로, 길이)를 가지는 암호화된 프로비저닝 데이터 필드 및 8 옥텟의 크기를 가지는 프로비저닝 데이터 MIC(message integrity check) 필드를 포함할 수 있다. 프로비저닝 데이터에 대해서는, 이하의 도 8b와 관련하여 상세히 설명된다.
본 문서의 다양한 실시예들에 따른 프로비저너(400)는, 동작 570에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 제1 장치(401)로부터 프로비저닝 데이터의 전송에 대응하는 응답을 수신할 수 있다. 동작 570에 따른 응답은, 제1 장치(401)가 프로비저닝 데이터를 성공적으로 수신 및 처리되었음을 지시하기 위한 PDU를 포함할 수 있다. 동작 570에 따라, 프로비저닝 프로세스는 완료될 수 있다. 본 문서의 다양한 실시예들에 따르면, 제1 장치(401)가 프로비저닝 데이터의 수신 또는 프로비저닝 데이터의 처리에 실패한 경우, 제1 장치(401)는, 프로비저너(400)에 프로비저닝 실패를 지시하기 위한 PDU를 전송할 수 있다.
도 6a는, 다양한 실시예들에 따른, 프로비저너(예: 도 1의 전자 장치(101))가 메쉬 네트워크(예: 도 2의 블루투스 저 에너지 메쉬 네트워크(200))에 포함된 노드로부터, 노드가 지원하는 역할에 대한 정보를 수신하는 동작을 설명하기 위한 예시 도면이다. 본 문서의 다양한 실시예들에 따르면, 메쉬 네트워크에 포함된 노드의 수는 복수 개일 수 있으나, 노드의 수가 이에 의하여 제한되는 것은 아니다.
도 6a를 참조하면, 본 문서의 다양한 실시예들에 따른 프로비저너(예: 도 1의 전자 장치(101))는, 동작 600에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 복수의 장치들과 메쉬 네트워크(예: 블루투스 저 에너지 메쉬 네트워크(200))를 형성할 수 있다. 본 문서의 다양한 실시예들에 다르면, 동작 600은, 프로비저너가, 복수의 장치들을 메쉬 네트워크의 노드가 되도록 하는 프로비저닝 프로세스(예: 도 4의 프로비저닝 프로세스(470))를 수행하는 동작을 포함할 수 있다.
본 문서의 다양한 실시예들에 따른 프로비저너는, 동작 610에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 메쉬 네트워크를 형성하는 노드들로부터 역할 정보를 획득할 수 있다. 본 문서에서, 설명의 편의를 위하여, 역할에 대한 정보는 간략히 "역할 정보"라는 용어로도 언급될 수 있다.
도 6b는, 다양한 실시예들에 따른, 노드가 지원하는 역할에 대한 정보를 전송하기 위한 데이터(예: 컴포지션 데이터) 필드를 설명하기 위한 예시 도면이다.
도 6b를 참조하면, 본 문서의 다양한 실시예들에 따르면, 메쉬 네트워크(예: 블루투스 저 에너지 메쉬 네트워크(200))를 형성하는 노드가 지원하는 역할에 대한 정보는, 컴포지션(composition) 데이터에 의하여 지시될 수 있다. 본 문서의 다양한 실시예들에 따르면, 메쉬 네트워크를 형성하는 노드가 지원하는 역할에 대한 정보는 컴포지션 데이터 페이지(page) 0에 의하여 지시될 수 있다. 본 문서의 다양한 실시예들에 따르면, 컴포지션 데이터(composition data) 필드(620)는, 2 옥텟의 크기를 가지는 CID(company identifier) 필드(621), 2 옥텟의 크기를 가지는 PID(product identifier) 필드(622), 2 옥텟의 크기를 가지는 VID(version identifier) 필드(623), 2 옥텟의 크기를 가지는 CRPL(computer readable program logic) 필드(624), 또는 2 옥텟의 크기를 가지는 역할 필드(625) 및 가변(variable) 옥텟을 가지는 요소 필드(626)를 포함할 수 있다.
본 문서의 다양한 실시예들에 따른 CID 필드(621)에는, 16 비트의 컴퍼니(company) 식별자가 포함(다른 말로, 저장)될 수 있다. 본 문서의 다양한 실시예들에 따른 PID 필드(622)에는, 16 비트의 공급자 할당의(vendor-assigned) 제품 식별자가 포함될 수 있다. 본 문서의 다양한 실시예들에 따른 VID(623)필드에는, 16비트의 공급자 할당의 제품 버전 식별자가 포함될 수 있다. 본 문서의 다양한 실시예들에 따른 CRPL 필드(624)에는, 장치의 리플레이(replay) 방지 리스트 항목들의 최소 수를 나타내는 16 비트 값을 포함할 수 있다. 본 문서의 다양한 실시예들에 따른 역할 필드(625)는, 릴레이 역할을 지원하는지 여부를 지시하는 1비트(또는, 그 이상의 비트들)의 정보를 포함하는 릴레이 필드(relay field)(625a), 프록시 역할을 지원하는지 여부를 지시하는 1비트(또는, 그 이상의 비트들)의 정보를 포함하는 프록시 필드(proxy field)(625b), 프렌드 역할을 지원하는지 여부를 지시하는 1비트(또는, 그 이상의 비트)의 정보를 포함하는 프렌드 필드(friend field)(625c), 저 전력 역할을 지원하는지 여부를 지시하는 1비트(또는, 그 이상의 비트들)의 정보를 포함하는 저 전력 필드(low power field)(625d), 프로비저닝 역할을 지원하는지 여부를 지시하는 1비트(또는, 그 이상의 비트들)의 정보를 포함하는 프로비저닝 필드(provisioning field)(625e) 및 RFU 필드(reserved for future use field)(625f)를 포함할 수 있다. 본 문서의 다양한 실시예들에 따르면, 본 문서의 다양한 실시예들에 따른 역할 필드(625)에 포함되는 필드의 명칭(예: 릴레이 필드(625a), 프록시 필드(625b), 프렌드 필드(625c), 저 전력 필드(625d), 프로비저닝 필드(625e) 및 RFU 필드(625f))의 명칭은 다양하게 변경되어 언급될 수 있다.
본 문서의 다양한 실시예들에 따르면, 특정한(particular) 장치(예: 도 4의 제1 장치(401))가 적어도 하나의 역할(예: 프로비저닝 역할)을 지원하는 경우에는, 특정한 장치가 지원하는 적어도 하나의 역할에 대응하는 필드(예: 프로비저닝 필드(625e))에 1(true) 값이 포함될 수 있다. 본 문서의 다양한 실시예들에 따르면, 특정한 장치가 적어도 하나의 역할(예: 릴레이 역할)을 지원하지 않는 경우에는, 특정한 장치가 지원하지 않는 적어도 하나의 역할에 대응하는 필드(예: 릴레이 필드(625a))에 0(false) 값이 포함될 수 있다. 본 문서의 다양한 실시예들에 따른 컴포지션 데이터(또는, 컴포지션 데이터 페이지 0)는, 아래와 같은 옥텟들의 시퀀스로 표현될 수 있다.
0C001A0001000800030000010501000000800100001003103F002A00
상기 예시적으로 언급된 컴포지션 데이터는 아래와 같이 기술(described)될 수 있다.
·CID is 0x000C
·PID is 0x001A
·VID is 0x0001
·CRPL is 0x0008
·Features is 0x0003 - Relay and Friend features.
·Loc is "front" - 0x0100
·NumS is 5
·NumV is 1
·The Bluetooth SIG Models supported are:
o 0x0000, 0x8000, 0x0001, 0x1000, 0x1003
·The Vendor Models supported are:
o Company Identifier 0x003F and Model Identifier 0x002A
본 문서의 다양한 실시예들에 따른 컴포지션 데이터는, 프로비저닝 프로세스(예: 도 4의 프로비저닝 프로세스(470))가 완료된 후에, 메쉬 네트워크를 형성하는 노드(예: 도 4에서, 프로비저너(400)와 프로비저닝 프로세스(470)가 수행된 후의 제1 장치(401))로부터 프로비저너(예: 도 4의 프로비저너(400))에 전송될 수 있다. 본 문서의 다양한 실시예들에 따르면, 컴포지션 데이터는 다양한 장치들로부터 프로비저너에게 전송될 수 있다.
본 문서의 다양한 실시예들에 따르면, 메쉬 네트워크를 형성하는 노드가 지원하는 역할에 대한 정보는, 적어도 하나의 역할에 대한 정보를 전송하기 위하여 생성된 메쉬 메시지(예: 커스텀(custom) 메시지)를 통하여 프로비저너(예: 도 4의 프로비저너(400))에 전송될 수 있다. 본 문서의 다양한 실시예들에 따른 커스텀 메시지는, 프로비저너와 노드 사이에 설립된 광고 베어러를 통하여 전송될 수 있다. 본 문서의 다양한 실시예들에 따르면, 커스템 메시지는 다양한 베어러들 또는 다양한 통신 경로들(paths)을 통하여 프로비저너에게 전송될 수 있다. 본 문서의 다양한 실시예들에 따른 커스텀 메시지는, 적어도 하나의 역할을 지원함을 지시하는 정보(예: 1(true)) 또는 적어도 하나의 역할을 지원하지 아니함을 지시하는 정보(예: 0(false))를 포함할 수 있다.
도 6c는, 다양한 실시예들에 따른, 메쉬 네트워크의 노드가 지원하는 역할의 현재 상태를 지시하는 데이터 필드를 설명하기 위한 예시 도면이다.
도 6c를 참조하면, 메쉬 네트워크(예: 도 2의 블루투스 저 에너지 메쉬 네트워크(200))를 형성하는(예: 블루투스 저 에너지 메쉬 네트워크(200)에 포함되는) 노드는, 프로비저너(예: 도 4의 프로비저너(400))에게 메쉬 네트워크를 형성하는 노드가 지원하는 역할의 현재 상태에 대한 정보를 하트비트(heartbeat) 메시지(630)를 통하여 프로비저너에 전송할 수 있다. 본 문서의 다양한 실시예들에 따른 프로비저너는, 주기적/비주기적으로, 본 문서의 다양한 실시예들에 따른 하트비트 메시지(630)를 적어도 하나의 노드로부터 전송받을 수 있다. 본 문서의 다양한 실시예들에 따른 하트비트 메시지(630)는, 메쉬 네트워크 내에서 노드가 여전히 활성화(active)되어 있음을 판단하는 기능으로서 사용될 수 있다. 본 문서의 다양한 실시예들에 따른 하트비트 메시지(630)는, 노드가 얼마나 멀리 떨어져 있는지 여부를 판단하는 기능으로서 사용될 수 있다. 본 문서의 다양한 실시예들에 따른 하트비트 메시지(630)는, RFU 필드(631), InitTTL(time to live) 필드(632), 및 역할 필드(633)를 포함할 수 있다.
본 문서의 다양한 실시예들에 따른 InitTTL 필드(622)는, 메시지가 전송되는 경우에 사용되는 초기 TTL에 대한 정보를 포함할 수 있다. InitTTL 필드(632)는, 예를 들어, 7비트(bits)의 크기를 가질 수 있다. 본 문서의 다양한 실시예들에 따르면, InitTTL 값은, 예를 들어, 0X00-0x7F 값을 가질 수 있다.
본 문서의 다양한 실시예들에 따른 역할 필드(633)는, 릴레이 필드(633a), 프록시 필드(633b), 프렌드 필드(633c), 저전력 필드(633d), 및 프로비저닝 필드(633e)를 포함할 수 있다. 본 문서의 다양한 실시예들에 따른 역할 필드(633)는, RFU 필드(633f)를 더 포함할 수 있다. 본 문서의 다양한 실시예들에 따르면, 역할 필드(633)에는 노드가 지원하는 적어도 하나의 역할에 대한 현재 상태를 지시하는 정보가 포함될 수 있다. 예를 들어, 노드(예: 도 4의 프로비저닝 프로세스(470)가 수행된 후의 제1 장치(401))가 프로비저닝 역할을 현재 사용 중인 경우에는, 프로비저닝 필드(633e)에 1(true) 값이 포함되어 프로비저너로 전송될 수 있다. 또 다른 예로, 노드가 릴레이 역할을 현재 사용하지 않는 중인 경우에는, 릴레이 필드(633a)에 0(false) 값이 포함되어 프로비저너로 전송될 수 있다.
본 문서의 다양한 실시예들에 따른 컴포지션 데이터는, 예를 들어, 하트비트 메시지(630)를 이용하여 메쉬 네트워크의 노드(예: 도 4의 프로비저닝 프로세스(470)가 수행된 후의 제1 장치(401))로부터 프로비저너(예: 도 4의 프로비저너(400))로 전송될 수 있다. 다만, 이는 예시적인 설명으로서, 컴포지션 데이터는 다양한 메시지 타입(예: 메쉬 메시지, 광고 메시지, 커스텀 메시지 등)에 기반하여, 메쉬 네트워크를 형성하는 노드로부터 프로비저너로 전송될 수 있다.
도 7은, 다양한 실시예들에 따른, 프로비저너(예: 도 4의 프로비저너(400))의 동작을 설명하기 위한 예시 도면이다.
도 7을 참조하면, 본 문서의 다양한 실시예들에 따른 프로비저너(예: 도 1의 프로세서(120)) 는, 동작 700에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 메쉬 네트워크(예: 도 2의 블루투스 저 에너지 메쉬 네트워크(200))를 형성하는 노드(예: 도 4의 프로비저닝 프로세스(470)가 수행된 후의 제1 장치(401))로부터 제1 정보를 획득할 수 있다. 본 문서의 다양한 실시예들에 따르면, 제1 정보는 메쉬 네트워크를 형성하지 않는 외부 장치를 검출(detect)하였음을 지시하는 정보를 포함할 수 있다. 본 문서의 다양한 실시예들에 따르면, 제1 정보는 검출된 외부 장치의 UUID 및/또는 OOB 정보를 포함할 수 있다. 본 문서의 다양한 실시예들에 따르면, 외부 장치는, 프로비저너의 커버리지에는 포함되지 않지만, 메쉬 네트워크를 형성하는 적어도 하나의 노드의 커버리지에는 포함되는 장치를 포함할 수 있다. 본 문서의 다양한 실시예들에 따르면, 제1 정보는, 제1 정보를 포함하는 메시지(본 문서에서, 설명의 편의상 검출 메시지라는 용어로 언급된다)가 메쉬 네트워크를 형성하는 노드로부터 프로비저너에 전송됨에 따라, 제1 정보가 프로비저너에 의하여 획득될 수 있다. 본 문서의 다양한 실시예들에 따른 제1 정보는, 메쉬 네트워크를 형성하는 노드가 지원하는 역할에 대한 정보, 또는 검출 메시지를 포함할 수 있다. 본 문서의 다양한 실시예들에 따르면, 적어도 하나의 노드가 지원하는 역할에 대한 정보는, 검출 메시지가 전송되기 전에, 검출 메시지와 별도로 프로비저너에 전송될 수 있다. 예를 들어, 메쉬 네트워크를 형성하는 노드가 지원하는 역할에 대한 정보는, 검출 메시지와 함께, 또는 검출 메시지와 별개로(예: 상이한 시간에) 프로비저너에 전송될 수 있다. 본 문서의 다양한 실시예들에 따르면, 메쉬 네트워크를 형성하는 노드가 지원하는 역할에 대한 정보는 컴포지션 데이터로서 프로비저너에 전송될 수 있다.
본 문서의 다양한 실시예들에 따른 프로비저너(예: 도 1의 프로세서(120))는, 동작 710에서, 제1 정보를 제공한 노드가 프로비저닝 역할을 지원하는지 여부를 판단할 수 있다. 본 문서의 다양한 실시예들에 따른 프로비저너(예: 도 4의 프로비저너(400))는, 메쉬 네트워크를 형성하는 노드로부터 획득된, 노드가 지원하는 역할에 대한 정보에 기반하여, 노드가 프로비저닝 역할을 지원하는지 여부를 판단할 수 있다.
본 문서의 다양한 실시예들에 따른 프로비저너(예: 도 1의 프로세서(120))는, 동작 720에서, 동작 710의 판단에 따라, 제1 정보를 제공한 노드가 프로비저닝 역할을 지원하는 경우, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 메쉬 네트워크를 형성하지 않는 외부 장치에 대한 프로비저닝 프로세스를 수행하기 위한 역할을, 제1 정보를 제공한 노드(예: 도 4의 프로비저닝 프로세스가 수행된 후의 제1 장치(401))에 제공할 수 있다. 본 문서의 설명의 편의를 위하여, 도 7과 관련된 설명에서, 도 4의 제1 장치(401)는 프로비저닝 역할을 지원하는 장치임을 전제로 설명될 수 있다. 본 문서의 다양한 실시예들에 따르면, 외부 장치에 대한 프로비저닝 프로세스를 위한 역할의 제공은, 프로비저닝 역할의 제공을 지시하는 정보(예: 식별자)를 포함하는 메시지를 메쉬 네트워크를 형성하는 노드에 전송함으로써 수행될 수 있다. 본 문서의 다양한 실시예들에 따른 프로비저닝 역할의 제공을 지시하는 정보를 포함하는 메시지는, 예를 들어, 메쉬 메시지, 광고 메시지 또는 커스텀 메시지와 같은 다양한 메시지 타입을 이용하여 메쉬 네트워크를 형성하는 노드(예: 도 4의 프로비저닝 프로세스(470)가 수행된 후의 제1 장치(401))에 전송될 수 있다. 본 문서의 다양한 실시예들에 따르면, 메쉬 네트워크를 형성하는 노드에 대한 프로비저닝 역할의 제공이 지정된 식별자의 값에 따라 결정되도록 설정된 경우, 예를 들면, 프로비저닝 역할의 제공을 지시하는 식별자가 1(true)이고, 프로비저닝 역할의 회수를 지시하는 식별자가 0(false)인 경우, 동작 720은, 식별자 값 1(true)을 메쉬 네트워크를 형성하는 노드에 전송하는 동작을 포함할 수 있다. 본 문서의 다양한 실시예들에 따른, 프로비저닝 역할을 지원할 수 있는 노드는, 프로비저너로부터 수신된 식별자 값에 기반하여 외부 장치에 대한 프로비저닝 프로세스를 수행하기 위한 역할을 제공받을 수 있다. 본 문서의 다양한 실시예들에 따른, 프로비저닝 역할을 지원하는 노드는, 프로비저너로부터 수신된 식별자 값에 기반하여 적어도 하나의 역할을 활성화 할 수 있다. 본 문서의 다양한 실시예들에 따르면, "역할"이라는 용어는 "권한(authority)"이라는 용어로도 언급될 수 있다. 본 문서의 다양한 실시예들에 따르면, "역할의 제공"이라는 용어는 "권한의 부여(give 또는 grant)" 라는 용어로도 언급될 수 있다.
본 문서의 다양한 실시예들에 따른 프로비저너(예: 도 1의 프로세서(120))는, 동작 730에서, 메쉬 네트워크를 형성하는 노드(예: 도 4의 프로비저닝 프로세스(470)가 수행된 후의 제1 장치(401))가 프로비저닝 역할을 지원하지 않는 것으로 판단되면, 동작 730에서, 수신된 제1 정보를 무시(예: 폐기) 할 수 있다.
본 문서의 다양한 실시예들에 따른 프로비저너(예: 도 1의 프로세서(120))는, 동작 740에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 프로비저닝 역할을 제공한 노드(예: 도 4의 프로비저닝 프로세스(470)가 수행된 후의 제1 장치(401))로부터 제2 정보를 획득할 수 있다. 본 문서의 다양한 실시예들에 따른 제2 정보는, 외부 장치에 대한 프로비저닝 프로세스의 결과를 지시하는 정보 및 외부 장치에 대한 장치 정보(예: 외부 장치의 UUID 및/또는 OOB 정보)를 포함할 수 있다. 본 문서의 다양한 실시예들에 따르면, 프로비저닝 프로세스의 결과를 지시하는 정보 및 외부 장치에 대한 장치 정보는 함께, 또는 별개로, 외부 장치에 대해서 프로비저닝 프로세스(예: 도 4의 프로비저닝 프로세스(470))를 수행한, 메쉬 네트워를 형성하는 노드(예: 도 4의 프로비저닝 프로세스(470)가 수행된 후의 제1 장치(401))에 전송될 수 있다.
본 문서의 다양한 실시예들에 따른 프로비저너(예: 도 1의 프로세서(120))는, 동작 750에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 프로비저닝 역할이 제공된 노드(예: 도 4의 프로비저닝 프로세스(470)가 수행된 후의 제1 장치(401))에 대해 제공된 역할을 프로비저닝 역할이 제공된 노드로부터 회수할 수 있다. 본 문서의 다양한 실시예들에 따르면, 동작 750에서, 동작 740에 따라, 프로비저너(예: 도 1의 전자 장치(101))는, 프로비저닝 역할이 제공된 노드(예: 도 4의 프로비저닝 프로세스(470)가 수행된 후의 제1 장치(401)) 에 대해 제공된 프로비저닝 역할에 대한 폐기(예: 역할의 삭제 또는 역할의 비활성화)를 요청할 수 있다. 본 문서의 다양한 실시예들에 따른 폐기 요청은, 예를 들어, 메쉬 메시지의 형식으로 프로비저닝 역할이 제공된 노드에 전송될 수 있다.
도 8a는, 다양한 실시예들에 따른, 프로비저닝 역할을 지원하는, 메쉬 네트워크(예: 도 2의 블루투스 저 에너지 메쉬 네트워크(200))를 형성하는 노드(예: 도 4의 프로비저닝 프로세스(470)가 수행된 후의 제1 장치(401))의 동작을 설명하기 위한 예시 도면이다. 본 문서의 설명의 편의를 위하여, 도 8a 및 도 8b와 관련된 설명에서는, "도 4의 프로비저닝 프로세스가 수행된 후의 제1 장치(401)"는 프로비저닝 역할을 지원하는 장치로서 예시적으로 언급될 수 있다.
도 8a를 참조하면, 본 문서의 다양한 실시예들에 따른, 제1 장치 (예: 도 4의 프로비저닝 프로세스(470)가 수행되기 전의 제1 장치(401))는, 동작 800에서, 통신 모듈을 이용하여, 프로비저너와의 프로비저닝 프로세스를 통해 메쉬 네트워크(예: 도 2의 블루투스 저 에너지 메쉬 네트워크(200))를 형성하는 노드로서 메쉬 네트워크에 포함될 수 있다.
본 문서의 다양한 실시예들에 따른 제1 장치 (예: 도 4의 프로비저닝 프로세스(470)가 수행된 후의 제1 장치(401))는, 동작 805에서, 통신 모듈을 이용하여, 메쉬 네트워크를 형성하지 않는 외부 장치에 대한 장치 정보를 획득할 수 있다. 본 문서의 다양한 실시예들에 따르면, 동작 805에 따라 획득되는 외부 장치의 장치 정보는, 예를 들어, 외부 장치의 UUID 및/또는 OOB 정보를 포함할 수 있다. 본 문서의 다양한 실시예들에 따르면, 제1 장치(예: 도 4의 프로비저닝 프로세스(470)가 수행된 후의 제1 장치(401))는 제2 장치의 장치 정보를 획득하기 위하여 스캐닝 동작을 수행할 수 있다.
본 문서의 다양한 실시예들에 따른 제1 장치(예: 도 4의 프로비저닝 프로세스(470)가 수행된 후의 제1 장치(401))는, 동작 810에서, 통신 모듈을 이용하여, 제1 장치(예: 도 4의 프로비저닝 프로세스(470)가 수행된 후의 제1 장치(401))가 지원하는 역할에 대한 정보 및 외부 장치에 대한 정보를 프로비저너에게 제공할 수 있다. 도 8a에서는, 제1 장치가 지원하는 역할에 대한 정보가 외부 장치에 대한 장치 정보와 함께 전송되는 실시예가 도시된다. 본 문서의 다양한 실시예들에 따르면, 제1 장치가 지원하는 역할에 대한 정보와 외부 장치에 대한 장치 정보는 별개로(예: 상이한 시간에) 프로비저너에 전송될 수 있다.
본 문서의 다양한 실시예들에 따른 제1 장치(예: 도 4의 프로비저닝 프로세스(470)가 수행된 후의 제1 장치(401))는, 동작 815에서, 통신 모듈을 이용하여, 프로비저너로부터 외부 장치에 대한 프로비저닝 프로세스를 수행하기 위한 역할을 획득할 수 있다.
본 문서의 다양한 실시예들에 따른 제1 장치(예: 도 4의 프로비저닝 프로세스(470)가 수행된 후의 제1 장치(401))는, 동작 820에서, 통신 모듈을 이용하여, 외부 장치에 대한 프로비저닝 프로세스를 수행할 수 있다.
본 문서의 다양한 실시예들에 따른 제1 장치(예: 도 4의 프로비저닝 프로세스(470)가 수행된 후의 제1 장치(401))는, 동작 825에서, 외부 장치에 대한 프로비저닝 프로세스의 결과 및 외부 장치에 대한 정보 중 적어도 일부를 포함하는 정보를 프로비저너로 전송할 수 있다.
본 문서의 다양한 실시예들에 따른 제1 장치(예: 도 4의 프로비저닝 프로세스(470)가 수행된 후의 제1 장치(401))는, 동작 830에서, 프로비저너로부터 획득된 역할을 프로비저너에 반납할 수 있다. 본 문서의 다양한 실시예들에 따르면, 동작 830은, 메쉬 네트워크를 형성하지 않는 외부 장치와 프로비저닝 프로세스가 완료된 후 또는 동작 825가 완료된 후 제1 장치에 의해 수행될 수도 있고, 동작 825를 통해 프로비저닝 결과를 수신한 프로비저너에 의해 역할이 회수할 수도 있다. 예를 들어, 본 문서의 다양한 실시예들에 따른 제1 장치(예: 도 4의 프로비저닝 프로세스(470)가 수행된 후의 제1 장치(401))는, 프로비저너로부터 수신된 폐기 요청에 따라 프로비저닝 역할을 폐기하는 방식(예: 도 7의 동작 750)으로 프로비저너로부터 제공된 프로비저닝 역할을 반납할 수 있다. 또는, 본 문서의 다양한 실시예들에 따른 제1 장치(예: 도 4의 프로비저닝 프로세스(470)가 수행된 후의 제1 장치(401))는, 동작 820 또는 동작 825가 완료된 후, 프로비저너로부터 제공된 역할의 폐기 여부에 대한 사용자 선택을 입력받기 위한 선택 메시지를 디스플레이 하여, 선택 메시지에 대한 사용자의 입력에 따라 프로비저닝 역할의 폐기 여부를 판단할 수 있다. 본 문서의 다양한 실시예들에 따르면, 동작 830은, 프로비저닝 역할의 제공과 관련된 식별자의 값을 변경(예: 1(true)에서 0(false)으로)하는 동작 또는, 프로비저닝 역할의 제공과 관련하여 프로비저너로부터 수신한 식별자 값(예: 1(true))을 삭제하는 동작을 포함할 수 있다.
도 8b는, 다양한 실시예들에 따른, 프로비저닝 프로세스에서 외부 장치에 전송되는 프로비저닝 데이터를 설명하기 위한 예시 도면이다.
도 8b를 참조하면, 본 문서의 다양한 실시예들에 따른 범용 프로비저닝 PDU(840)는, 범용 프로비저닝 제어(generic provisioning control: GPC) 필드(841) 및 범용 프로비저닝 페이로드(generic provisioning payload) 필드(842)를 포함할 수 있다. 본 문서의 다양한 실시예들에 따른 GPC 필드(841)는, 예를 들면, 1 옥텟에서 17 옥텟까지 가변적인 크기를 가질 수 있다.
본 문서의 다양한 실시예들에 따른 범용 프로비저닝 페이로드 필드(842)는, 0 옥텟에서 64 옥텟까지 가변적인 크기를 가질 수 있다. 본 문서의 다양한 실시예들에 따른 범용 프로비저닝 페이로드 필드(842)는, 패딩(padding) 필드(851), 타입(type) 필드(852) 및 파라미터(parameters) 필드(853)를 포함할 수 있다. 본 문서의 다양한 실시예들에 따른 패딩 필드(851)는 2 비트의 크기를 가질 수 있다. 예를 들어, 패딩 필드(851)는 0b00 값을 가질 수 있다. 본 문서의 다양한 실시예들에 따른 타입 필드(852)는, 6 비트의 크기를 가질 수 있다. 타입 필드(852)는, 예를 들어, 프로비저닝 PDU 타입에 대한 값이 포함될 수 있다. 프로비저닝 PDU 타입에 대한 값은 아래의 표 1과 같이 정의될 수 있다.
타입 명칭(name)
0x00 프로비저닝 초대
0x01 프로비저닝 캐퍼빌리티들
0x02 프로비저닝 시작
0x03 프로비저닝 공개 키
0x04 프로비저닝 입력 완료
0x05 프로비저닝 확인(confirmation)
0x06 프로비저닝 랜덤
0x07 프로비저닝 데이터
0x08 프로비저닝 완료
0x09 프로비저닝 실패(failed)
0x0A-0xFF RFU
본 문서의 다양한 실시예들에 따른 파라미터 필드(853)는, 가변 크기를 가질 수 있다. 파라미터 필드(853)는 다양한 메시지 파라미터들을 포함할 수 있다. 본 문서의 다양한 실시예들에 따른 파라미터 필드(953)는, 암호화된 프로비저닝 데이터 필드(encrypted provisioning data field)(860) 및 프로비저닝 데이터(provisioning data) MIC 필드(870)를 포함할 수 있다. 본 문서의 다양한 실시예들에 따른 암호화된 프로비저닝 데이터 필드(860)는, 16 옥텟의 크기를 가지는 네트워크 키(network key) 필드(861), 2 옥텟의 크기를 가지는 키 인덱스(key index) 필드(862), 1 옥텟의 크기를 가지는 플래그(flag) 필드(863), 4 옥텟의 크기를 가지는 IV(initialization vector) 인덱스 필드(864) 및 2 옥텟의 크기를 가지는 유니캐스트 어드레스(unicast address) 필드(865)를 포함할 수 있다.
본 문서의 다양한 실시예들에 따른 네크워크 키 필드(861)는, 네트워크 키(network key)를 포함할 수 있다. 본 문서의 다양한 실시예들에 따른 키 인덱스 필드(862)는, 네트워크 키의 인덱스를 포함할 수 있다. 본 문서의 다양한 실시예들에 따른 플래그 필드(863)는, 1비트 크기를 가지는, 키 리프레쉬(refresh) 플래그가 포함되는 키 리프레쉬 플래그 필드(미도시), 1비트의 크기를 가지는, IV 인덱스 플래그가 포함되는 IV 인덱스 플래그 필드(미도시) 및 5 비트의 크기를 가지는 RFU 필드(미도시)를 포함할 수 있다. 본 문서의 다양한 실시예들에 따른 IV 인덱스 필드(864)는, 현재의 IV 인덱스 값을 포함할 수 있다. 본 문서의 다양한 실시예들에 따른 유니캐스트 어드레스 필드(965)는, 메쉬 네트워크(예: 도 2의 블루투스 저 에너지 메쉬 네트워크(200))에 추가된 노드의 1차 요소(primary element)의 유니캐스트 어드레스를 포함할 수 있다.
본 문서의 다양한 실시예들에 따르면, 메쉬 네트워크(예: 도 2의 블루투스 저 에너지 메쉬 네트워크(200))를 형성하는 노드(예: 도 4의 프로비저닝 프로세스(470)가 수행된 후의 제1 장치(401))는 외부 장치와의 프로비저닝 프로세스 동작을 통하여 메쉬 네트워크의 네트워크 키를 외부 장치에 제공할 수 있다. 이에 따라, 외부 장치는 메쉬 네트워크를 형성하는 노드와 동일한 네트워크 키를 가질 수 있게 되어 메쉬 네트워크에 포함될 수 있다. 본 문서의 다양한 실시예들에 따르면, 프로비저너(예: 도 4의 프로비저너(400)) 및/또는 메쉬 네트워크를 형성하는 노드(예: 도 4의 프로비저닝 프로세스(470)가 수행된 후의 제1 장치(401))는, 네트워크 키를 이용하여 NID(network identifier), 암호화 키 및 프라이버시 키 중 적어도 하나를 생성할 수 있다. 메쉬 네트워크를 형성하는 노드가, 예를 들어, 다른 노드(예: 프로비저닝 프로세스가 수행된 후의 외부 장치)로부터 메쉬 메시지를 수신하면, 메쉬 메시지를 수신한 노드는 네트워크 키에 기반하여(예: NID를 이용하여) 인증과정을 수행할 수 있다. 예를 들어, 메쉬 메시지를 수신한 노드(예: 도 4의 프로피저닝 프로세스(470)가 수행된 후의 제1 장치(401))는, 수신한 노드가 알고 있는 NID와 메쉬 메시지의 NID 필드에 포함된 NID 값을 비교하여 서로 일치하지 아니하는 경우, 수신된 메쉬 메시지를 무시할 수 있다. 메쉬 메시지를 수신한 노드는, 알려진 NID와 메쉬 메시지의 NID 필드에 포함된 NID 값을 비교하여 서로 일치하는 경우, 메시지를 인증할 수 있다.
본 문서의 다양한 실시예들에 따르면, 메쉬 네트워크는, 그 자체로서 하나의 서브넷(subnet)을 형성할 수 있다. 본 문서의 다양한 실시예들에 따른 서브넷은, 네트워크 계층에서 네트워크 키를 공유함에 따라 서로 통신이 가능한 노드들의 그룹을 의미할 수 있다. 본 문서의 다양한 실시예들에 따른 메쉬 네트워크는, 하나 이상의 서브넷들을 포함할 수 있다.
도 9a는, 다양한 실시예들에 따른, 메쉬 네트워크(예: 도 2의 블루투스 저 에너지 메쉬 네트워크(200))에서 외부 장치를 메쉬 네트워크의 노드로 형성하는 동작을 설명하기 위한 예시 도면이다.
도 9a를 참조하면, 본 문서의 다양한 실시예들에 따른 프로비저너(예: 도 1의 프로세서(120))는, 동작 905에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 프로비저너의 커버리지에 포함되는 장치(예: 제1 장치(401))를 검출하기 위한 스캐닝을 수행할 수 있다.
본 문서의 다양한 실시예들에 따른 프로비저너(400)(예: 도 1의 프로세서(120))는, 동작 910에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 제1 장치(401)가 전송한 비콘 메시지를 수신할 수 있다.
본 문서의 다양한 실시예들에 따른 프로비저너(400)(예: 도 1의 프로세서(120))는, 동작 915에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 동작 910에 따라 수신된 비콘 메시지에 기반하여 제1 장치(401)와 프로비저닝 프로세스를 수행할 수 있다.
본 문서의 다양한 실시예들에 따른 프로비저너(400)(예: 도 1의 프로세서(120))는, 동작 920에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 동작 915에 따른 프로비저닝 프로세스가 완료된 이후에, 제1 장치(401)(예: 메쉬 네트워크를 형성하는 노드)로부터 제1 장치(401)가 지원하는 역할에 대한 정보를 획득할 수 있다. 본 문서의 다양한 실시예들에 따르면, 동작 915에 따른 프로비저닝 프로세스 중이라도, 제1 장치(401)는, 제1 장치(401)가 지원하는 역할 정보를, 예를 들면, 커스텀 메시지 형식으로 프로비저너에게 제공할 수 있다.
본 문서의 다양한 실시예들에 따른 제1 장치(401)는, 동작 925에서, 통신 모듈을 이용하여, 메쉬 네트워크를 형성하지 않는 외부 장치(901)를 검출하기 위한 스캐닝을 수행할 수 있다.
본 문서의 다양한 실시예들에 따른 제1 장치(401)는, 동작 930에서, 통신 모듈을 이용하여, 외부 장치(901)가 전송한 비콘 메시지를 수신하여 외부 장치(901)를 검출할 수 있다. 본 문서의 다양한 실시예들에 따르면, 외부 장치(901)는, 프로비저너(400)의 커버리지로부터 벗어나 있기 때문에, 프로비저너(400)는 외부 장치(901)가 전송한 비콘 메시지를 수신할 수 없다(930a).
본 문서의 다양한 실시예들에 따른 제1 장치(401)는, 동작 935에서, 통신 모듈을 이용하여, 외부 장치(901)를 검출함에 따른 검출 메시지를 프로비저너(400)로 전송할 수 있다.
본 문서의 다양한 실시예들에 따른 프로비저너(400)(예: 도 1의 프로세서(120))는, 동작 940에서, 동작 920에 따라 획득된 정보에 기반하여, 제1 장치(401)가 프로비저닝이 가능한 장치인지, 예컨대, 프로비저닝 역할을 지원하는 장치인지 여부를 판단할 수 있다.
본 문서의 다양한 실시예들에 따른 프로비저너(400)(예: 도 1의 프로세서(120))는, 동작 945에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 제1 장치(401)가 프로비저닝 역할을 지원하는 경우, 제1 장치(401)에 프로비저닝 역할을 제공할 수 있다. 본 문서의 다양한 실시예들에 따르면, 제1 장치(401)가 프로비저닝 역할을 지원하지 않는 경우, 프로비저너(400)는 메쉬 네트워크를 형성하는 노드 중 프로비저닝 역할을 지원하는 다른 노드에게 외부 장치(901)에 대한 프로비저닝 프로세스를 수행할 것을 요청할 수 있다.
본 문서의 다양한 실시예들에 따른 제1 장치(401)는, 동작 950에서, 통신 모듈을 이용하여, 외부 장치(901)와의 프로비저닝 프로세스를 수행할 수 있다. 본 문서의 다양한 실시예들에 따르면, 프로비저닝 프로세스를 통하여 외부 장치(901)에 본 문서의 다양한 실시예들에 따른 메쉬 네트워크(예: 도 2의 블루투스 저 에너지 메쉬 네트워크(200))의 네트워크 키 및 네트워크 키와 관련된 다양한 정보들(예: NID, 프라이버시 키 등)이 제공될 수 있다.
본 문서의 다양한 실시예들에 따른 제1 장치(401) 는, 동작 955에서, 통신 모듈을 이용하여, 프로비저너(400)에 프로비저닝 프로세스의 결과 및 외부 장치(901)에 대한 장치 정보를 전송할 수 있다. 동작 955 이후, 제1 장치(401)의 프로비저닝 역할은 제1 장치(401)에 의해, 또는 프로비저너(400)에 의해 비활성화(inactivation) 될 수 있다. 본 문서의 다양한 실시예들에 따르면, 동작 955 이후에도 프로비저너(400)로부터 제공된 프로비저닝 역할은 유지될 수도 있다.
도 9b는, 다양한 실시예들에 따라, 프로비저너(예: 도 9a의 프로비저너(400))의 커버리지가 실질적으로 확장되는 예를 설명하기 위한 예시 도면이다.
도 9b를 참조하면, 본 문서의 다양한 실시예들에 따른 메쉬 네트워크(예: 블루투스 저 에너지 메쉬 네트워크(200))는, 프로비저너(400), 제1 노드(981), 제2 노드(982), 제3 노드(983), 제4 노드(984), 제5 노드(985) 및 제6 노드(986)를 포함할 수 있다.
본 문서의 다양한 실시예들에 따른 제1 노드(981) 내지 제6 노드(986)중에서 제1 노드(981)는 프로비저닝 역할을 지원하는 노드일 수 있다. 본 문서의 다양한 실시예들에 따르면, 프로비저너(400)로부터 프로비저닝 역할을 제공 받은 경우, 제1 노드(981)는 제1 노드(981)의 커버리지(981a)에 포함되는 외부 장치(901)에 대해서 프로비저닝 프로세스를 수행할 수 있다. 제1 노드(981)와 외부 장치(901)의 프로비저닝 프로세스에 따라, 외부 장치(901)가 본 문서의 다양한 실시예들에 따른 메쉬 네트워크에 포함될 수 있다. 본 문서의 다양한 실시예들에 따라, 외부 장치(901)는 프로비저너(400)의 커버리지(400a)에 포함되지 않는 장치이지만, 본 문서의 다양한 실시예들에 따른 메쉬 네트워크를 형성하는 노드가 될 수 있으므로, 프로비저너(400)의 커버리지가 제1 노드(981)에 의해 실질적으로 확장될 수 있다.
도 9c 및 도 9d는, 다양한 실시예들에 따른, 전자 장치(예: 도 4의 프로비저너(400))를 동작하는 방법을 설명하기 위한 예시 도면이다.
도 9c를 참조하면, 본 문서의 다양한 실시예들에 따른 전자 장치 (예: 도 1의 프로세서(120))는, 동작 960에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 적어도 하나의 외부 장치들과 프로비저닝 프로세스에 의해 메쉬 네트워크를 형성할 수 있다.
본 문서의 다양한 실시예들에 따른 전자 장치(예: 도 1의 프로세서(120))는, 동작 962에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 메쉬 네트워크 상의 제1 장치(예: 도 9의 제1 장치(401))로부터 제1 장치와 연관된 제1 식별정보 및 네트워크 상에 없는 제2 장치(예: 도 9의 외부 장치(901))와 연관된 제2 식별 정보를 포함하는 제1 정보를 수신할 수 있다.
본 문서의 다양한 실시예들에 따른 전자 장치(예: 도 1의 프로세서(120))는, 동작 964에서, 제1 장치(예: 도 9a의 제1 장치(401))가 프로비저닝 프로세스를 수행할 수 있는지를 판단할 수 있다.
본 문서의 다양한 실시예들에 따른 전자 장치(예: 도 1의 프로세서(120))는, 동작 966에서, 통신 모듈(예: 도 2의 통신 모듈(190))을 이용하여, 제2 장치(예: 도 9a의 외부 장치(901))에 대한 프로비저닝 프로세스를 수행하는 역할을 제1 장치에 제공할 수 있다.
본 문서의 다양한 실시예들에 따른 전자 장치(예: 도 1의 프로세서(120))는, 동작 968에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 제1 장치(예: 도 9a의 제1 장치(401))로부터 제2 장치(예: 도 9a의 외부 장치(901))에 대한 프로비저닝 프로세스의 결과 및 제2 장치와 연관된 장치 정보를 포함하는 제2 정보를 수신할 수 있다.
도 9d와 관련하여, 본 문서의 다양한 실시예들에 따르면, 본 문서의 다양한 실시예들에 따른 전자 장치(예: 도 1의 전자 장치(101))가 메쉬 네트워크(예: 도 2의 블루투스 저 에너지 메쉬 네트워크(200))를 형성하는 노드(예: 도 9a의 제1 장치(401))로서 동작할 수 있다. 도 9d에서는 전자 장치(예: 도 1의 전자 장치(101))가 메쉬 네트워크의 노드로서 동작하는 경우의 동작 방법이 예시적으로 설명된다.
도 9d를 참조하면, 본 문서의 다양한 실시예들에 따른 전자 장치(예: 도 1의 프로세서(120))는, 동작 970에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 전자 장치(101)로 하여금 프로비저닝 프로세스에 의해, 프로비저너로서의 제1 장치를 포함하는 메쉬 네트워크 상의 노드가 되도록 제어할 수 있다.
본 문서의 다양한 실시예들에 따른 전자 장치(예: 도 1의 프로세서(120))는, 동작 971에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 메쉬 네트워크 상에 없는 제2 장치(예: 도 9a의 외부 장치(901))로부터 제2 장치와 연관된 제2 식별 정보를 수신할 수 있다.
본 문서의 다양한 실시예들에 따른 전자 장치 (예: 도 1의 프로세서(120))는, 동작 972에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 제2 식별 정보를 제1 장치(예: 도 9a의 프로비저너(400))에 전송할 수 있다.
본 문서의 다양한 실시예들에 따른 전자 장치(예: 도 1의 프로세서(120))는, 동작 973에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 제1 장치(예: 도 9a의 프로비저너(400))로부터 제2 장치(예: 도 9a의 외부 장치(901))에 대한 프로비저닝 프로세스를 수행하는 역할을 수신할 수 있다.
본 문서의 다양한 실시예들에 따른 전자 장치(예: 도 1의 프로세서(120))는, 동작 974에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 제2 장치에 대한 프로비저닝 프로세스를 수행할 수 있다.
본 문서의 다양한 실시예들에 따른 전자 장치(예: 도 1의 프로세서(120))는, 동작 975에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 제2 장치에 대한 프로비저닝 프로세스의 결과 및 제2 장치와 연관된 장치 정보를 포함하는 정보를 제1 장치에 제공할 수 있다.
본 문서의 다양한 실시예들에 따르면, 프로비저너에 의하여, 메쉬 네트워크를 형성하는 노드에 프로비저닝 역할이 제공되는 동작은, 노드가 외부 장치에 대한 검출 메시지를 수신하기 전 또는 수신한 이후에 수행될 수 있다.
도 10a 및 도 10b는, 다양한 실시예들에 따른, 프로비저너(예: 도 4의 프로비저너(400))가 외부 장치의 검출 메시지를 전송받은 후에, 프로비저너가 검출 메시지를 전송한 노드와 인접한 노드에 프로비저닝 역할을 제공하는 동작을 설명하기 위한 예시 도면이다.
도 10a를 참조하면, 본 문서의 다양한 실시예들에 따른 프로비저너(예: 도 1의 프로세서(120))는, 동작 1000에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 메쉬 네트워크(예: 도 2의 블루투스 저 에너지 메쉬 네트워크(200))를 형성하는 노드로부터 제1 정보를 획득할 수 있다. 본 문서의 다양한 실시예들에 따르면, 제1 정보는 메쉬 네트워크를 형성하는 노드에 의해 검색된 외부 장치(예: 도 9a의 외부 장치(901))에 대한 장치 정보(예: 도 9a의 외부 장치(901)의 UUID 및/또는 OOB 정보)를 포함할 수 있다. 본 문서의 다양한 실시예들에 따르면, 제1 정보는 외부 장치가 검색되었음을 지시하는 정보를 포함할 수 있다.
본 문서의 다양한 실시예들에 따른 프로비저너(예: 도 1의 프로세서(120))는, 동작 1010에서, 제1 정보를 제공한 노드가 프로비저닝 역할을 지원하는지 여부를 판단할 수 있다.
본 문서의 다양한 실시예들에 따른 프로비저너(예: 도 1의 프로세서(120))는, 동작 1020에서, 제1 정보를 제공한 노드가 프로비저닝 역할을 지원하지 않는 노드로 판단된 경우, 제1 정보를 제공한 노드와 인접한, 프로비저닝 역할을 지원하는 다른 노드에 프로비저닝 역할을 제공할 수 있다.
본 문서의 다양한 실시예들에 따르면, 메쉬 네트워크를 형성하는 노드(예: 프로비저닝 역할을 지원하지 않는 노드)는 스캐닝을 수행함으로써, 메쉬 네트워크를 형성하는 다른 노드 사이의 통신 감도에 관한 정보(예: 수신신호 세기(RSSI)) 및 주변 노드(또는, 장치)에 대한 정보(예: 주변 노드의 UUID)를 검출할 수 있다. 프로비저닝 역할을 지원하지 않는 노드는, 검출된 수신신호 세기에 기반하여 노드 주변에 위치하는 다른 노드와의 상대적인 거리를 판단할 수 있다. 본 문서의 다양한 실시예들에 따르면, 프로비저닝 역할을 지원하지 않는 노드와, 프로비저닝 역할을 지원하지 않는 노드 주변에 위치하는 다른 노드 사이의 상대적인 거리는, 프로비저너(예: 도 4의 프로비저너(400))에 의하여 판단될 수도 있다.
프로비저닝 역할을 지원하지 않는 노드는, 예를 들어, 판단된 상대적인 거리에 대한 정보 및 주변 노드의 UUID를 프로비저너(예: 도 4의 프로비저너(400))에 전송할 수 있다. 본 문서의 다양한 실시들에 따르면, 프로비저너는, 프로비저닝 역할을 지원하지 않는 노드로부터 수신된 정보에 기반하여 프로비저닝 역할을 지원하지 않는 노드 주변에 위치하는 노드(예: 주변 노드)가 프로비저닝 역할을 지원하는지 여부를 판단할 수 있다. 본 문서의 다양한 실시예들에 따르면, 프로비저너는, 주변 노드가 프로비저닝 역할을 지원하는 경우, 주변 노드에 프로비저닝 역할을 제공할 수 있다.
본 문서의 다양한 실시예들에 따르면, 프로비저너(예: 도 4의 프로비저너(400))는, 프로비저닝 역할을 지원하지 않는 노드와 지정된 홉(hop) 카운트(예를 들면, 1홉 또는 2홉) 이하의 노드/노드들 중에서 프로비저닝 역할을 지원하는 노드에 대해서 프로비저닝 역할을 제공할 수 있다. 본 문서의 다양한 실시예들에 따르면, 프로비저닝 역할을 지원하지 않는 노드가 메시지를 브로드캐스팅하고, 브로드캐스팅된 메시지에 대응하여 수신되는 메시지가 있는지 여부에 따라, 프로비저닝 역할을 지원하지 않는 노드는, 프로비저닝 역할을 지원하지 않는 노드 주변에 적어도 하나의 노드가 존재하는지 여부를 판단할 수 있다. 예를 들어, 판단에 기초하여, 프로비저닝 역할을 지원하지 않는 노드는, 프로비저닝 역할을 지원하지 않는 노드 주변에 적어도 하나의 노드가 존재함을 지시하는 정보를 포함하는 메시지를 프로비저너에 전송할 수 있다.
본 문서의 다양한 실시예들에 따른 프로비저너(예: 도 1의 프로세서(120))는, 동작 1010에서, 제1 정보를 제공한 노드가 프로비저닝 역할을 지원하는 노드로 판단된 경우, 동작 1030에서, 제1 정보를 제공한 노드에 프로비저닝 역할을 제공할 수 있다.
도 10b를 참조하면, 본 문서의 다양한 실시예들에 따르면, 메쉬 네트워크(예: 블루투스 저 에너지 메쉬 네트워크(200))를 형성하는 노드 중, 프로비저너(400), 제1 노드(981) 및 제3 노드(983)가 프로비저닝 역할을 지원할 수 있다.
본 문서의 다양한 실시예들에 따르면, 프로비저닝 역할을 지원하지 않는 제4 노드(984)는 제4 노드(984)의 커버리지(984a)에 진입한(다른 말로, 포함된) 외부 장치(901)를 검출할 수 있다. 본 문서의 다양한 실시예들에 따르면, 외부 장치(901)는, 제3 노드(983)의 커버리지(983a) 및 프로비저너(400)의 커버리지(900a)에는 포함되지 않을 수 있다. 외부 장치(901)는, 예를 들어, 이동이 가능한 장치(예: 사용자의 신체 일부에 착용되어 있는 웨어러블 디바이스 등)를 포함할 수 있다. 외부 장치(901)를 검출한 제4 노드(984)는, 외부 장치(901)를 검출하였음을 지시하는 정보를 포함하는 메시지를 프로비저너(400)에 전송할 수 있다. 제4 노드(984)로부터 전송받은 메시지에 기반하여 프로비저너(400)는, 도 10a에서 설명된 본 문서의 다양한 실시예들에 따라, 제4 노드(984)의 주변(예: 가장 근접하게)에 위치하고, 프로비저닝 역할을 지원하는 제3 노드(983)에 대해서 프로비저닝 역할을 제공할 수 있다. 본 문서의 다양한 실시예들에 따르면, 프로비저닝 역할을 제공받은 제3 노드(983)의 커버리지(983a)에 아직 외부 장치(901)가 진입하지는 않았지만, 제3 노드(983)의 주변에 위치하는 제4 노드(984)의 커버리지(984a)에 외부 장치(901)가 위치하여, 외부 장치(901)의 이동에 따라 제3 노드(983)의 커버리지(983a)로의 진입이 예상될 수 있다. 본 문서의 다양한 실시예들에 따르면, 이와 같은 외부 장치(901)의 이동을 예상하여 프로비저닝 역할을 지원하는 노드(예: 제3 노드(983))에 프로비저닝 역할을 제공함으로써, 프로비저너(400)의 커버리지(400a)에 대한 확장성(expandability)을 증대시킬 수 있다.
본 문서의 다양한 실시예들에 따르면, 도 10a 및 도 10b에서는, 프로비저닝 역할을 지원하지 않는 노드(예: 제4 노드(984))가 외부 장치(예: 외부 장치(901))를 검출하는 실시예가 도시되었으나, 이는 예시적인 것으로서, 프로비저닝 역할을 지원하는 노드(예: 제3 노드(983))가 외부 장치를 검출한 경우에도 도 10a 및 도 10b와 관련된 실시예가 동일하게 적용될 수 있다.
도 11a 및 도 11b는, 다양한 실시예들에 따른, 프로비저너가 메쉬 네트워크를 형성하는 노드로부터 외부 장치의 검출 메시지를 전송받은 후에, 프로비저너가 메쉬 네트워크를 형성하는 노드에 프로비저닝 역할을 제공하는 동작을 설명하기 위한 예시 도면이다.
도 11a를 참조하면, 본 문서의 다양한 실시예들에 따른 프로비저너(예: 도 4의 프로비저너(400))는, 동작 1100에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 메쉬 네트워크(예: 도 2의 블루투스 저 에너지 메쉬 네트워크(200))를 형성하는 복수의 노드들(예: 도 10b의 제1 노드(981), 제3 노드(983))로부터 제1 정보를 획득할 수 있다. 본 문서의 다양한 실시예들에 따르면, 제1 정보는 복수의 노드들에 의해 검색된 외부 장치(예: 도 9의 외부 장치(901))에 대한 장치 정보(예: 외부 장치의 UUID 및/또는 OOB 정보)를 포함할 수 있다. 본 문서의 다양한 실시예들에 따르면, 제1 정보는 외부 장치가 검색되었음을 지시하는 정보를 포함할 수 있다.
본 문서의 다양한 실시예들에 따른 프로비저너 (예: 도 1의 프로세서(120))는, 동작 1110에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 복수의 노드들 중 어느 하나의 노드에 프로비저닝 역할을 제공할 수 있다.
도 11b를 참조하면, 본 문서의 다양한 실시예들에 따른 메쉬 네트워크(예: 블루투스 저 에너지 메쉬 네트워크(200))를 형성하는 복수의 노드들 중, 프로비저너(400), 제1 노드(981) 및 제3 노드(983)가 프로비저닝 역할을 지원할 수 있다. 본 문서의 다양한 실시예들에 따르면, 제1 노드(981) 및 제3 노드(983)는 외부 장치(901)를 검출함에 따른 검출 메시지를 프로비저너(400)에 제공할 수 있다. 본 문서의 다양한 실시예들에 따른 외부 장치(901)는, 프로비저너(400)의 커버리지(400a)에는 포함되지 않지만, 제1 노드(981)의 커버리지(981a) 및 제3 노드(983)의 커버리지(983a)에는 포함될 수 있다. 검출 메시지를 전송받은 프로비저너(400)는, 제1 노드(981) 및 제3 노드(983) 중 어느 하나의 노드에 대해서 프로비저닝 역할을 제공할 수 있다.
본 문서의 다양한 실시예들에 따르면, 프로비저닝 역할을 제공할 어느 하나의 노드를 결정하는 방법은, 예를 들면, 랜덤(random) 방식으로 결정될 수 있다. 본 문서의 다양한 실시예들에 따르면, 프로비저닝 역할을 제공할 어느 하나의 노드를 결정하는 방법은, 프로비저너(400)와 노드와의 거리(예: 프로비저너(400)와 가까운 거리(예: 지정된 홉 카운트 미만에 위치한 노드)에 기반하여 결정될 수 있다. 이 밖에, 다양한 파라미터들에 기반하여 프로비저닝 역할이 제공될 노드가 결정될 수 있다. 본 문서의 다양한 실시예들에 따르면, 프로비저너(400)는, 노드의 능력(capability)(예: 노드의 하드웨어/소프트웨어 성능), 노드에 대한 사용자의 선호도, 노드에 대한 사용자의 사용 이력(history), 또는 노드가 사용자에 의하여 지정된 위치에 포함되는지 여부 등과 같은 다양한 기준에 따라 프로비저닝 역할을 제공할 노드를 결정할 수 있다.
도 12a 및 도 12b는, 다양한 실시예들에 따른, 프로비저너(400)가 복수의 외부 장치들에 대한 검출 메시지를 전송받은 후에, 프로비저너가 검출 메시지를 전송한 노드에 프로비저닝 역할을 제공하는 동작을 설명하기 위한 예시 도면이다.
본 문서의 다양한 실시예들에 따른 프로비저너(400)는, 외부 장치(예: 제1 외부 장치(901a), 제2 외부 장치(901b))를 검출한 노드(예: 제1 노드(981))에 대해서 프로비저닝 역할을 제공할 수 있다. 도 12a에서는, 본 문서의 다양한 실시예들에 따른 프로비저너(400)가 복수의 외부 장치들(901a, 901b)을 검출한 실시예가 도시된다. 본 문서의 다양한 실시예들에 따른 프로비저너(400)는, 복수의 외부 장치들을 검출한 제1 노드(981)에 대해서 프로비저닝 역할을 제공할 수 있다. 본 문서의 다양한 실시예들에 다른 제1 노드(981)는 프로비저닝 역할을 지원하는 노드일 수 있다. 본 문서의 다양한 실시예들에 따른 제1 노드(981)는, 제1 노드(981)의 커버리지(981a)에 포함된 복수의 외부 장치들(901a, 901b)에 대한 프로비저닝 프로세스를 수행할 수 있다.
도 12b에서는, 복수의 외부 장치들(901a, 901b)이 검출된 경우에 프로비저너(400), 제1 노드(981) 및 복수의 외부 장치들(901a, 901b) 의 동작이 상세히 도시된다.
도 12b를 참조하면, 본 문서의 다양한 실시예들에 따른 프로비저너(400)(예: 도 1의 프로세서(120))는, 동작 1205에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 제1 장치(401)를 검출하기 위한 스캐닝을 수행할 수 있다.
본 문서의 다양한 실시예들에 따른 프로비저너(400)(예: 도 1의 프로세서(120))는, 동작 1210에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 제1 장치(401)가 전송한 비콘 메시지를 수신할 수 있다.
본 문서의 다양한 실시예들에 따른 프로비저너(400)(예: 도 1의 프로세서(120))는, 동작 1215에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 동작 1210에 따라 수신된 비콘 메시지에 기반하여 제1 장치(401)와 프로비저닝 프로세스를 수행할 수 있다.
본 문서의 다양한 실시예들에 따른 프로비저너(예: 도 1의 프로세서(120))는, 동작 1220에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 제1 장치(401)로부터 제1 장치(401)가 지원하는 적어도 하나의 역할에 대한 정보를 획득할 수 있다.
본 문서의 다양한 실시예들에 따른 제1 장치(401)는, 동작 1225에서, 통신 모듈을 이용하여, 외부 장치(예: 제1 외부 장치(901a), 제2 외부 장치(901b))를 검출하기 위한 스캐닝을 수행할 수 있다.
본 문서의 다양한 실시예들에 따른 제1 장치(401)는, 동작 1230a 및 1230b에서, 통신 모듈을 이용하여, 제1 외부 장치(901a) 및 제2 외부 장치(901b)가 전송한 비콘 메시지를 수신하여 외부 장치들(901a, 901b)를 검출할 수 있다.
본 문서의 다양한 실시예들에 따른 제1 장치(401)는, 동작 1235에서, 통신 모듈을 이용하여, 제1 외부 장치(901a) 및 제2 외부 장치(901b)를 검출함에 따른 검출 메시지를 프로비저너(400)로 전송할 수 있다.
본 문서의 다양한 실시예들에 따른 프로비저너(예: 도 1의 프로세서(120))는, 동작 1240에서, 동작 1220에 따라 획득된 정보에 기반하여, 제1 장치(401)가 프로비저닝이 가능한 장치인지, 예컨대, 프로비저닝 역할을 지원하는 장치인지 여부를 판단할 수 있다.
본 문서의 다양한 실시예들에 따른 프로비저너(400)(예: 도 1의 프로세서(120))는, 동작 1245에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 제1 장치(401)가 프로비저닝 역할을 지원하는 경우, 제1 장치(401)에 프로비저닝 역할을 제공할 수 있다.
본 문서의 다양한 실시예들에 따른 제1 장치(401)는, 동작 1250a 및 1250b에서, 통신 모듈을 이용하여, 제1 외부 전자 장치(901a) 및 제2 외부 전자 장치(901b)와의 프로비저닝 프로세스를 수행할 수 있다. 본 문서의 다양한 실시예들에 따르면, 프로비저닝 프로세스를 통하여, 메쉬 네트워크를 형성하는 노드인 제1 장치(401)는, 제1 외부 장치(901a) 및 제2 외부 장치(901b)에 본 문서의 다양한 실시예들에 따른 메쉬 네트워크(예: 도 2의 블루투스 저 에너지 메쉬 네트워크(200))의 네트워크 키 및 네트워크 키와 관련된 다양한 정보들(예: NID, 프라이버시 키 등)을 제공할 수 있다.
본 문서의 다양한 실시예들에 따른 제1 장치(401)는, 동작 1255에서, 통신 모듈을 이용하여, 프로비저너(400)에 프로비저닝 프로세스의 결과, 제1 외부 장치 장치(901a) 및 제2 외부 전자 장치(901b)에 대한 정보를 전송할 수 있다. 도 12b에 도시된 다양한 동작들을 통하여, 복수의 외부 장치들(901a, 901b)을 검출한 경우에도 복수의 외부 장치들(901a, 901b)과 모두 프로비저닝 프로세스가 수행될 수 있다.
본 문서의 다양한 실시예들에 따르면, 도 10a 내지 도 12b와 관련된 본 문서의 다양한 실시예들은, 외부 장치(예: 도 9a의 외부 장치(901))에 대한 검출 메시지를 프로비저너가 전송 받기 전에 수행될 수도 있다.
도 13a 내지 도 13c는, 다양한 실시예들에 따른, 프로비저너가 복수의 외부 장치들에 대한 검출 메시지를 전송받기 전에, 프로비저너가 프로비저닝 역할을 지원하는 모든 복수의 노드들에 대해 프로비저닝 역할을 제공하는 동작을 설명하기 위한 예시 도면이다.
도 13a를 참조하면, 본 문서의 다양한 실시예들에 따른 프로비저너(예: 도 1의 프로세서(120))는, 동작 1300에서, 통신 모듈(예: 도 1의 통신 모듈(190)을 이용하여, 메쉬 네트워크(예: 도 2의 블루투스 저 에너지 메쉬 네트워크(200))를 형성하는 복수의 노드들로부터, 복수의 노드들이 지원하는 역할에 대한 정보를 획득할 수 있다.
본 문서의 다양한 실시예들에 따른 프로비저너(예: 도 1의 프로세서(120))는, 동작 1310에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 복수의 노드들 중에서 프로비저닝 역할을 지원하는 모든 노드들에 대해 프로비저닝 역할을 제공할 수 있다.
도 13b를 참조하면, 본 문서의 다양한 실시예들에 따른 메쉬 네트워크(예: 블루투스 저 에너지 메쉬 네트워크(200))를 형성하는 복수의 노드들 중, 프로비저너(400), 제1 노드(981), 제2 노드(982), 제3 노드(983) 및 제6 노드(986)가 프로비저닝 역할을 지원할 수 있다. 제1 노드(981), 제2 노드(982), 제3 노드(983) 및 제6 노드(986)는 프로비저너(400)의 커버리지(400a)에 포함될 수 있다. 프로비저너(400)는, 본 문서의 다양한 실시예들에 따라, 프로비저닝 역할을 지원하는 모든 노드들, 예컨대, 제1 노드(981), 제2 노드(982), 제3 노드(983) 및 제6 노드(986)에 대해서 프로비저닝 역할을 제공할 수 있다.
본 문서의 다양한 실시예들에 따르면, 프로비저너(400)는, 프로비저닝 역할을 제공함에 있어서 역할의 유효 기간(예: 48시간) 또는 역할의 유효 횟수(예: 5회)에 관한 정보를 프로비저닝 역할을 지원하는 노드들에 전송할 수 있다. 프로비저너(400)로부터 역할을 제공받은 노드는, 역할의 유효 기간 또는 역할의 유효 횟수에 관한 정보에 기초하여 프로비저너로서의 역할을 수행할 수 있다.
도 13c는, 본 문서의 다양한 실시예들에 따라, 프로비저닝 역할을 지원하는 복수의 노드들이 프로비저닝 역할을 제공받은 경우에, 외부 장치와 프로비저닝 프로세스를 수행하는 동작을 설명하기 위한 도면이다.
도 13c를 참조하면, 본 문서의 다양한 실시예들에 따른 제1 노드(981) 및 제2 노드(982)는, 프로비저너(예: 도 13b의 프로비저너(400))로부터 프로비저닝 역할을 제공받은 노드일 수 있다. 외부 장치(901)는, 본 문서의 다양한 실시예들에 따른 메쉬 네트워크(예: 도 2의 블루투스 저 에너지 메쉬 네트워크(200))를 형성하지 않는 장치일 수 있다.
본 문서의 다양한 실시예들에 따르면, 제1 노드(981) 및 제2 노드(982)는, 동작 1330a 및 1330b에서, 통신 모듈을 이용하여, 프로비저너(400)로부터 프로비저닝 역할을 제공받은 상태에서, 외부 장치(901)를 검출하기 위한 스캐닝을 수행할 수 있다.
본 문서의 다양한 실시예들에 따르면, 제1 노드(981) 및 제2 노드(982) 동작 1340a 및 1340b에서, 통신 모듈을 이용하여, 외부 장치(901)가 전송한 비콘 메시지를 수신할 수 있다.
본 문서의 다양한 실시예들에 따르면, 제2 노드(982)는, 동작 1350b에서, 통신 모듈을 이용하여, 외부 장치(901)에 대한 프로비저닝 초대 메시지를 전송할 수 있다.
본 문서의 다양한 실시예들에 따르면, 제1 노드(981)는, 동작 1350a에서, 통신 모듈을 이용하여, 외부 장치(901)에 대한 프로비저닝 초대 메시지를 전송할 수 있다.
본 문서의 다양한 실시예들에 따르면, 제2 노드(982)는, 동작 1360에서, 통신 모듈을 이용하여, 외부 장치(901)와 프로비저닝 프로세스를 수행할 수 있다.
본 문서의 다양한 실시예들에 따르면, 프로비저닝 프로세스가 진행 중인 장치는 동시에 다른 장치와 프로비저닝 프로세스를 수행하지 못할 수도 있다. 예를 들어, 먼저 외부 장치(901)에 프로비저닝 초대 메시지를 전송한 제2 노드(982)가 외부 장치(901)와의 프로비저닝 프로세스를 수행할 수 있다. 본 문서의 다양한 실시예들에 따르면, 외부 장치(901)는, 제1 노드(981)가 전송한 프로비저닝 초대 메시지는 무시할 수 있다.
도 14a 및 도 14b는, 다양한 실시예들에 따른, 프로비저너가 외부 장치에 대한 검출 메시지를 전송받기 전에, 지정된 시간 구간에 따라, 메쉬 네트워크(예: 도 2의 블루투스 저 에너지 메쉬 네트워크(200))를 형성하는 복수의 노드들에 대해 순차적으로 프로비저닝 역할을 제공하는 동작을 설명하기 위한 예시 도면이다.
본 문서의 다양한 실시예들에 따르면, 프로비저너(예: 도 1의 프로세서(120))는, 동작 1400에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 메쉬 네트워크(예: 도 2의 블루투스 저 에너지 메쉬 네트워크(200))를 형성하는 복수의 노드들로부터, 복수의 노드들이 지원하는 역할에 대한 정보를 획득할 수 있다.
본 문서의 다양한 실시예들에 따른 프로비저너(101)(예: 도 1의 프로세서(120))는, 동작 1410에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 복수의 노드들 중 프로비저닝 역할을 지원하는 복수의 노드들에 대해서, 지정된 시간 구간(period)에 따라 프로비저닝 역할을 순차적으로 제공할 수 있다.
도 14b를 참조하면, 본 문서의 다양한 실시예들에 따른 메쉬 네트워크(예: 블루투스 저 에너지 메쉬 네트워크(200))를 형성하는 복수의 노드들 중, 프로비저너(400), 제1 노드(981), 제2 노드(982), 제3 노드(983) 및 제6 노드(986)가 프로비저닝 역할을 지원할 수 있다. 일 실시 예에 따르면, 제1 노드(981), 제2 노드(982), 제3 노드(983) 및 제6 노드(986)는 프로비저너(400)의 커버리지(400a)에 포함될 수 있다. 본 문서의 다양한 실시예들에 따른 프로비저너(400)는, 프로비저닝 역할을 지원하는 노드에 대해 지정된(다른 말로, 할당된) 시간 구간에 따라 순차적으로 프로비저닝 역할을 제공할 수 있다. 본 문서의 다양한 실시예들에 따르면, 제1 시간 구간 내지 제4 시간 구간은 예를 들어 12시간 간격으로 설정된 시간 구간일 수 있으나, 이는 예시적인 것으로서 이에 의하여 본 문서의 다양한 실시예들에 제한되지 않는다.
본 문서의 다양한 실시예들에 따르면, 시간 구간에 대한 정보는 프로비저닝 역할을 지원하는 모든 노드들(예: 제1 노드(981), 제2 노드(982), 제3 노드(983) 및 제6 노드(986))에 대해서 동시에 전송될 수 있다. 본 문서의 다양한 실시예들에 따르면, 프로비저닝 역할을 지원하는 모든 노드들(예: 제1 노드(981), 제2 노드(982), 제3 노드(983) 및 제6 노드(986))에 대해서 동시에 프로비저닝 역할이 제공될 수 있고, 프로비저닝 역할의 제공과 함께, 본 문서의 다양한 실시예들에 따른 시간 구간에 대한 정보도 전송될 수 있다. 본 문서의 다양한 실시예들에 따르면, 프로비저닝 역할을 제공받은 노드들(예: 제1 노드(981), 제2 노드(982), 제3 노드(983) 및 제6 노드(986))은, 지정된 시간 구간에 따라 프로비저닝 역할을 순차적으로 활성화 하도록 설정될 수 있다. 본 문서의 다양한 실시예들에 따르면, 시간 구간에 대한 정보가 프로비저닝 역할을 지원하는 노드들(예: 제1 노드(981), 제2 노드(1082), 제3 노드(983) 및 제6 노드(1086))에게 전송되지 않고, 프로비저너(400)가 지정된 시간 구간에 따라 각각의 노드에 대해서 순차적으로 프로비저닝 역할을 제공할 수 있다.
도 15는, 다양한 실시예들에 따른, 프로비저너가 복수의 외부 장치들에 대한 검출 메시지를 전송받기 전에, 프로비저너가 상황 정보(context information)에 기반하여 메쉬 네트워크(예: 도 2의 블루투스 저에너지 메쉬 네트워크(200))를 형성하는 노드에 프로비저닝 역할을 제공하는 동작을 설명하기 위한 예시 도면이다.
본 문서의 다양한 실시예들에 따르면, 프로비저너(예: 도 1의 프로세서(120))는, 동작 1500에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 메쉬 네트워크를 형성하는 적어도 하나의 노드로부터, 적어도 하나의 노드가 지원하는 역할에 대한 정보를 획득할 수 있다.
본 문서의 다양한 실시예들에 따르면, 프로비저너(예: 도 1의 프로세서(120))는, 동작 1510에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 메쉬 네트워크를 형성하는 적어도 하나의 노드에 대한 상황 정보를 획득할 수 있다. 본 문서의 다양한 실시예들에 따른 상황 정보는, 특정한 노드가 프로비저닝 프로세스를 수행한 횟수 또는 메쉬 네트워크를 형성하는 다른 노드로부터 메쉬 메시지를 수신한 횟수와 같은 정보를 포함할 수 있다.
본 문서의 다양한 실시예들에 따르면, 프로비저너(예: 도 1의 프로세서(120))는, 동작 1520에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 동작 1510에 따라 수신된 상황 정보에 기반하여, 복수의 장치들 중에서 프로비저닝 역할을 가지는 적어도 하나의 노드에 대해 프로비저닝 역할을 제공할 수 있다. 본 문서의 다양한 실시예들에 따른 프로비저너(예: 도 4의 프로비저너(400))는, 특정한 노드가 프로비저닝 프로세스를 수행한 횟수 또는 특정한 노드가 메쉬 네트워크를 형성하는 다른 노드로부터 메쉬 메시지를 수신한 횟수를 기반으로 오름차순 또는 내림차순으로 우선 순위를 결정할 수 있다. 본 문서의 다양한 실시예들에 따른 프로비저너는, 결정된 우선 순위에 따라 순차적으로 프로비저닝 역할을 지원하는 노드들에 대해서 프로비저닝 역할을 제공할 수 있다.
본 문서의 다양한 실시예들에 따르면, 최초의(예: 메쉬 네트워크가 최초로 형성되는 시점에서의) 프로비저너는, 메쉬 네트워크(예: 도 2의 블루투스 저 에너지 메쉬 네트워크(200))를 형성하기 위한 사용자 입력을 최초로 수신한 장치가 최초의 프로비저너로서 결정될 수 있다. 본 문서의 다양한 실시예들에 따르면, 프로비저너, 사용자 입력에 따라 새롭게 설정되거나, 사용자 입력에 따라, 제1 노드(예: 도 9a의 제1 노드(981))에서 제2 노드(예: 도 9a의 제2 노드(982))로 프로비저너로서의 역할이 이전되는 경우와 같이, 프로비저너가 재설정되는 방식으로 결정될 수 있다. 본 문서의 다양한 실시예들에 따르면, 메쉬 네트워크를 형성하는 장치들 중에서 지정된 어느 하나의 장치가 최초의 프로비저너로서 결정될 수 있다.
본 문서의 다양한 실시예들에 따르면, 도 13a 내지 도 15와 관련된 본 문서의 다양한 실시예들은, 외부 장치에 대한 검출 메시지를 프로비저너가 전송 받은 후에 수행될 수도 있다
도 16a 내지 도 16c는, 다양한 실시예들에 따른, 프로비저너로서 동작하는 장치를 사용자 입력에 따라 결정하는 동작을 설명하기 위한 예시 도면이다. 도 16a 내지 도 16c에서는, 프로비저너(예: 도 4의 프로비저너(400))가 사용자의 입력에 따라 새롭게 결정되거나, 전자 장치(예: 도 1의 전자 장치(101))가 프로비저너로서 설정되어 있는 경우에 사용자 입력에 따라 프로비저너가 변경(예: 재설정)되는 실시예가 도시된다.
도 16a를 참조하면, 본 문서의 다양한 실시예들에 따른 전자 장치(101)는, 프로비저너로서 동작하기 위한 장치를 결정하기 위하여, 지정된 어플리케이션(예: 삼성® 커넥트™) 화면(1600)에 전자 장치(101)와 무선 통신 또는 유선 통신을 통하여 획득된 적어도 하나의 장치(예: 에어컨(1610), 팬(fan)(1620), 전등(1630), 또는 스피커(1640))를 디스플레이 할 수 있다.
도 16b를 참조하면, 본 문서의 다양한 실시예들에 따른 전자 장치(101)는, 디스플레이 된 적어도 하나의 장치(예: 에어컨(1610), 팬(1620), 전등(1630), 또는 스피커(1640)) 중에서 어느 하나의 장치(예: 팬(1620))에 대한 사용자(1690)의 선택 입력을 수신할 수 있다.
도 16c를 참조하면, 본 문서의 다양한 실시예들에 따른 전자 장치(101)는, 도 16b에 따른 사용자(1690)의 선택 입력에 따라, 프로비저너(예: 도 4의 프로비저너(400))로서 팬(1620)이 설정(또는, 재설정)되었음을 알리는 알림 메시지(1650)를 디스플레이 할 수 있다.
도 17a 내지 도 17d는, 다양한 실시예들에 따른, 프로비저닝 역할을 지원하는 복수의 노드들 중에서 사용자의 입력에 따라 어느 하나의 노드에 프로비저닝 역할이 제공되는 동작을 설명하기 위한 예시 도면이다. 도 17a 내지 도 17d에 도시된 본 문서의 다양한 실시예들은, 프로비저너(예: 도 4의 프로비저너(400))가 외부 장치로부터 전송된 검출 메시지를 수신하기 전 또는 외부 장치로부터 전송된 검출 메시지를 수신한 후에 수행될 수 있다.
본 문서의 다양한 실시예들에 따르면, 프로비저너(예: 도 1의 프로세서(120))는, 동작 1701에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 메쉬 네트워크(예: 도 2의 블루투스 저 에너지 메쉬 네트워크(200))를 형성하는 노드가 지원하는 역할에 대한 정보를 획득할 수 있다.
본 문서의 다양한 실시예들에 따르면, 프로비저너(예: 도 1의 프로세서(120))는, 동작 1702에서, 디스플레이(예: 도 1의 표시 장치(160))를 이용하여, 프로비저닝 역할을 지원하는 노드의 리스트를 디스플레이 할 수 있다.
본 문서의 다양한 실시예들에 따르면, 프로비저너(예: 도 1의 프로세서(120))는, 동작 1703에서, 통신 모듈(예: 도 1의 표시 장치(160))을 이용하여, 리스트 중에서 프로비저닝 역할이 제공될 노드에 대한 선택 입력을 수신할 수 있다.
본 문서의 다양한 실시예들에 따르면, 프로비저너(예: 도 1의 프로세서(120))는, 동작 1704에서, 통신 모듈(예: 도 1의 통신 모듈(190))을 이용하여, 선택 입력에 따라 선택된 노드에 대해 프로비저닝 역할을 제공할 수 있다.
도 17b를 참조하면, 본 문서의 다양한 실시예들에 따른 프로비저너(예: 전자 장치(101))는, 프로비저닝 역할을 지원하는 노드(예: 에어컨(1710), 팬(1720), 전등(1730), 또는 스피커(1740)) 에 대한 리스트를 디스플레이 할 수 있다.
도 17c를 참조하면, 본 문서의 다양한 실시예들에 따른 프로비저너(예: 전자 장치(101))는, 프로비저너 역할이 제공될 적어도 하나의 노드에 대한 사용자(1690)의 선택 입력을 수신할 수 있다. 도 17c에서는 하나의 노드(예: 스피커(1740))를 선택하는 실시예가 도시되었으나, 본 문서의 다양한 실시예들에 따르면, 프로비저너는, 복수의 노드들에 대한 선택 입력을 수신할 수 있다.
도 17d를 참조하면, 본 문서의 다양한 실시예들에 따른 프로비저너(예: 전자 장치(101))는, 도 17c에 따른 사용자(1690)의 선택에 따라, 프로비저너 역할이 제공될 노드로서 스피커(1740)가 설정되었음을 알리는 알림 메시지(1750))을 디스플레이 할 수 있다.
도 18은, 다양한 실시예들에 따른, 가정 내에서, 프로비저닝 역할이 제공된 노드에 의하여 프로비저너의 커버리지가 실질적으로 확장되는 동작을 설명하기 위한 예시 도면이다.
도 18을 참조하면, 가정 내에서, 본 문서의 다양한 실시예들에 따른 다양한 실시예들이 적용될 수 있다. 도 18에서는, 사용자의 선택에 따라 거실에 위치하는 팬(1800)이 프로비저너(예: 프로비저너(400))로 결정된 경우가 예시적으로 도시된다. 본 문서의 다양한 실시예들에 따른 다양한 전자 장치들(예: 스피커(1810), 에어컨(1820), 전등(1830))은, 팬(1800)의 커버리지(1800a)에 포함될 수 있다. 본 문서의 다양한 실시예들에 따른 팬(1800)은, 다양한 전자 장치들(예: 스피커(1810), 에어컨(1820), 전등(1830))과 메쉬 네트워크(예: 블루투스 저 에너지 메쉬 네트워크)를 형성할 수 있다. 메쉬 네트워크가 형성된 이후에, 방 2에 새로운 전등(1840)이 설치될 수 있다. 새롭게 설치된 전등(1840)은, 프로비저닝 역할을 지원하는 스피커(1810)의 커버리지(1810a)에는 포함되지만, 팬(1800)의 커버리지(1800a)에는 포함되지 않을 수 있다. 예를 들어, 스피커(1810)는, 팬(1800)으로부터 프로비저닝 역할을 제공받아 새롭게 설치된 전등(1840)에 대한 프로비저닝 프로세스를 수행할 수 있다. 프로비저닝 프로세스 따라, 스피커(1810)에 의하여 새롭게 설치된 전등(1840)이 메쉬 네트워크를 형성하는 노드로서 포함될 수 있다. 이에 따라, 사용자는 팬(1800)(예: 팬(1800)의 스위치 등)을 통하여 새롭게 설치된 전등(1840)을 제어할 수 있다.
본 문서의 다양한 실시예들에 따르면, 가정 내에 위치한 다양한 장치들에 대해서, 도 9a 내지 도 17d와 관련하여 설명된 본 문서의 다양한 실시예들이 적용될 수 있다. 예를 들어, 프로비저너로 설정된 팬(1800)은, 팬(1800)과의 거리가 가장 가까운 에어컨(1820)에 대해서 프로비저닝 역할을 제공할 수 있다. 본 문서의 다양한 실시예들에 따르면, 프로비저너로 설정된 팬(1800)은, 가정 내의 장치들에 대한 사용자의 사용 빈도가 가장 높은 장치, 예를 들면, 방 1의 전등(1830)에 대해서 프로비저닝 역할을 제공할 수 있다. 이 밖에, 본문서의 다양한 실시예들이 가정 내의 장치들(예: 스피커(1810), 에어컨(1820), 전등(1830)) 에 대해서 적용될 수 있다.
도 18와 관련하여, 프로비저너(예: 팬(1800))로부터 프로비저너 역할을 제공받는 장치가 고정된 장치(예: 스피커(1810))인 경우가 예시적으로 설명되었다. 본 문서의 다양한 실시예들에 따르면, 프로비저너 역할을 제공받는 장치는, 예를 들면, 이동이 가능한 장치(예: 사용자의 스마트 폰)가 될 수 있다. 이하에서는, 프로비저너 역할을 제공받는 장치가 사용자의 스마트 폰인 경우에 있어서, 본 문서의 다양한 실시예들이 일상 생활에서 적용되는 다양한 실시예들이 예시적으로 설명된다.
일 실시 예에 따르면, 가정 내에서, 프로비저너는 인터폰(미도시)으로 설정될 수 있다. 사용자는 방 2의 창문을 잠그기 위한 잠금 장치(미도시)를 새롭게 설치할 수 있다. 사용자는 잠금 장치를 메쉬 네트워크에 포함시키기 위하여 인터폰을 통해 스캔을 시도해 보지만, 인터폰과 잠금 장치와의 거리가 멀어 인터폰에 의한 직접적인 프로비저닝 프로세스가 불가능한 상태일 수 있다. 방 2에 프로비저닝 역할을 지원하는 컴퓨터(미도시)의 커버리지 내에 잠금 장치가 포함될 수 있고, 컴퓨터는 잠금 장치를 검출하여 메쉬 메시지를 통해 잠금 장치의 검출 결과를 인터폰에게 전송할 수 있다. 인터폰은, 방 2의 컴퓨터에 대해서 프로비저닝 역할을 제공하고, 컴퓨터는, 잠금 장치에 대한 프로비저닝 프로세스를 수행할 수 있다. 이와 같은 동작을 통하여, 잠금 장치는 가정의 메쉬 네트워크에 포함될 수 있고, 사용자는 자신의 스마트 폰을 이용하여 잠금 장치를 잠금/해제 할 수 있다.
본 문서의 다양한 실시예들에 따른 전자 장치는, 블루투스 저 에너지 무선 통신(예: 도 2의 블루투스 저 에너지 메쉬 네트워크(200))을 제공하도록 설정된 무선 통신 회로(예: 도 1의 무선 통신 모듈(192)) 및 상기 무선 통신 회로와 동작이 가능하도록 연결된 제어 회로(예: 도 1의 프로세서(192))를 포함하고, 상기 제어 회로는, 상기 무선 통신 회로를 이용하여 복수의 외부 장치들과 메쉬 네트워크(예: 도 2의 블루투스 저 에너지 메쉬 네트워크(200))를 형성하고, 상기 메쉬 네트워크를 형성하는 것은, 외부 장치(예: 도 4에서, 프로비저닝 프로세스(470)가 수행되기 전의 제1 장치(401))를, 상기 메쉬 네트워크 상의 노드(node)로 만드는 프로비저닝 프로세스(예: 도 4의 프로비저닝 프로세스(470))를 수행하는 것을 포함하고, 상기 무선 통신 회로를 이용하여, 상기 메쉬 네트워크 상의 제1 장치(예: 도 4에서, 프로비저닝 프로세스(470)가 수행된 후의 제1 장치(401))로부터, 상기 제1 장치와 연관된 제1 식별 정보 및 상기 메쉬 네트워크 상에 없는 제2 장치(예: 도 9a의 외부 장치(901))와 연관된 제2 식별 정보를 포함하는 제1 정보를 수신하고, 상기 제1 장치가 상기 프로비저닝 프로세스를 수행할 수 있는지를 판단하고, 상기 제2 장치에 대한 상기 프로비저닝 프로세스를 수행하는 역할을 상기 제1 장치에 제공하고, 상기 제1 장치로부터, 상기 무선 통신 회로를 이용하여, 상기 제2 장치에 대한 상기 프로비저닝 프로세스의 결과, 및 상기 제2 장치와 연관된 장치 정보를 포함하는 제2 정보를 수신하도록 설정될 수 있다.
본 문서의 다양한 실시예들에 따르면, 상기 프로비저닝 프로세스는, 네트워크 키(예: 도 8b의 네트워크 키 필드(861)에 포함되는 네트워크 키)를 제공하는 동작 및 상기 네트워크에 추가된 외부 장치를 위한 식별정보를 생성하는 동작을 포함할 수 있다.
본 문서의 다양한 실시예들에 따르면, 상기 제어 회로는, 상기 제1 장치로 하여금, 상기 제2 장치에 대한 상기 프로비저닝 프로세스에서, 상기 제2 장치에 상기 제 1 장치에 대한 프로비저닝 프로세스에 사용된 네트워크 키와 동일한 네트워크 키를 상기 제 2 장치에 제공하도록 더 설정될 수 있다.
본 문서의 다양한 실시예들에 따르면, 상기 제어 회로는, 상기 제2 정보를 수신한 후에 상기 제1 장치를 통하여 상기 제2 장치로부터 메시지(예: 광고 메시지)를 수신하도록 더 설정될 수 있다.
본 문서의 다양한 실시예들에 따르면, 상기 제어 회로는, 상기 제1 장치가 상기 프로비저닝 프로세스를 수행할 능력이 있는지 여부를 판단하고, 상기 제2 장치로부터 상기 제2 장치 정보를 직접(directly) 수신하지 못한 경우에,상기 제2 장치에 대한 프로비저닝 프로세스를 수행하는 역할을 상기 제1 장치에 제공하도록 설정될 수 있다.
본 문서의 다양한 실시예들에 따르면, 상기 제어 회로는, 상기 메쉬 네트워크상의 제3 장치(예: 도 4에서, 프로비저닝 프로세스(470)가 수행된 후의 제1 장치(401))로부터 상기 제3 장치와 연관된 제3 식별 정보 및 상기 메쉬 네트워크 상에 없는 제4 장치(예: 도 9a의 외부 장치(901))와 연관된 제4 식별 정보를 수신한 경우, 상기 제1 장치 및 상기 제 3 장치에 각각 상기 제2 장치에 대한 상기 프로비저닝 프로세스를 수행하는 역할 및 상기 제4 장치에 대한 상기 프로비저닝 프로세스를 수행하는 역할을 제공하도록 더 설정될 수 있다.
본 문서의 다양한 실시예들에 따르면, 상기 메쉬 네트워크상의 제3 장치로부터 상기 제3 장치와 연관된 제3 식별 정보 및 상기 메쉬 네트워크 상에 없는 제4 장치와 연관된 제4 식별 정보를 수신한 경우, 지정된 시간 구간에 따라 상기 제1 장치 및 상기 제 3 장치에 각각 상기 제2 장치에 대한 상기 프로비저닝 프로세스를 수행하는 역할 및 상기 제4 장치에 대한 상기 프로비저닝 프로세스를 수행하는 역할을 순차적으로 제공하도록 더 설정될 수 있다.
본 문서의 다양한 실시예들에 따르면, 상기 제어 회로는, 상기 제1 장치가 상기 프로비저닝 프로세스를 수행할 수 있는지에 대한 판단 결과, 상기 제1 장치가 상기 프로비저닝 프로세스에 대한 역할을 지원하지 않는 경우, 상기 제1 장치에 인접한 제5 장치에 상기 제2 장치에 대한 상기 프로비저닝을 수행하는 역할을 제공하도록 더 설정될 수 있다.
본 문서의 다양한 실시예들에 따르면, 상기 제어 회로는, 상기 무선 통신 모듈을 이용하여, 상기 복수의 장치들로부터 상기 복수의 장치들 각각이 지원하는 적어도 하나의 역할에 대한 정보를 수신하도록 더 설정될 수 있다.
본 문서의 다양한 실시예들에 따른 컴퓨터 판독 가능한 기록 매체는, 적어도 하나의 동작이 기록될 수 있고, 적어도 하나의 동작은, 상기 무선 통신 회로를 이용하여 복수의 외부 장치들(예: 도 4에서, 프로비저닝 프로세스(470)가 수행된 후의 제1 장치(401))과 메쉬 네트워크를 형성하고, 상기 메쉬 네트워크를 형성하는 것은, 외부 장치(예: 도 4에서, 프로비저닝 프로세스(470)가 수행되기 전의 제1 장치(401))를, 상기 메쉬 네트워크 상의 노드로 만드는 프로비저닝 프로세스를 수행하는 것을 포함하고, 상기 무선 통신 회로를 이용하여, 상기 메쉬 네트워크 상의 제1 장치로부터, 상기 제1 장치와 연관된 제1 식별 정보 및 상기 메쉬 네트워크 상에 없는 제2 장치와 연관된 제2 식별 정보를 포함하는 제1 정보를 수신하고, 상기 제1 장치가 상기 프로비저닝 프로세스를 수행할 수 있는지를 판단하고, 상기 제2 장치에 대한 상기 프로비저닝 프로세스를 수행하는 역할을 상기 제1 장치에 제공하고, 상기 제1 장치로부터, 상기 무선 통신 회로를 이용하여, 상기 제2 장치에 대한 상기 프로비저닝 프로세스의 결과, 및 상기 제2 장치와 연관된 장치 정보를 포함하는 제2 정보를 수신하는 동작을 포함할 수 있다.
본 문서의 다양한 실시예들에 따른 전자 장치는, 블루투스 저 에너지 무선 통신을 제공하도록 설정된 무선 통신 회로, 상기 전자 장치와 연관된 제1 식별 정보를 저장하도록 설정된 메모리 및 상기 무선 통신 회로 및 상기 메모리와 동작이 가능하도록 연결된 제어 회로를 포함하고, 상기 제어 회로는, 상기 무선 통신 회로를 이용하여, 상기 전자 장치가, 외부 장치를 메쉬 네트워크 상의 노드로 만드는 프로비저닝 프로세스에 의해, 프로비저너로서의 제1 장치를 포함하는 상기 메쉬 네트워크 상의 노드가 되도록 하고, 상기 무선 통신 회로를 통하여, 상기 메쉬 네트워크 상에 없는 제2 장치로부터 상기 제2 장치와 연관된 제2 식별 정보를 수신하고, 상기 무선 통신 회로를 통하여, 상기 제2 식별 정보를 상기 제1 장치에 전송하고, 상기 무선 통신 회로를 통하여, 상기 제1 장치로부터 상기 제2 장치에 대한 상기 프로비저닝 프로세스를 수행하는 역할을 수신하고, 상기 무선 통신 회로를 통하여, 상기 제2 장치에 대한 상기 프로비저닝 프로세스를 수행하고, 상기 무선 통신 회로를 통하여, 상기 제2 장치에 대한 상기 프로비저닝 프로세스의 결과 및 상기 제2 장치와 연관된 장치 정보를 포함하는 정보를 상기 제1 장치에 제공하도록 설정될 수 있다.
본 문서의 다양한 실시예들에 따르면, 상기 제어 회로는, 상기 무선 통신 회로를 통하여, 상기 제1 장치에 상기 전자 장치가 지원 가능한 적어도 하나의 역할에 대한 정보를 제공하도록 설정될 수 있다.
본 문서에 개시된 다양한 실시예들에 따른 전자 장치는 다양한 형태의 장치가 될 수 있다. 전자 장치는, 예를 들면, 휴대용 통신 장치(예: 스마트폰), 컴퓨터 장치, 휴대용 멀티미디어 장치, 휴대용 의료 기기, 카메라, 웨어러블 장치, 또는 가전 장치 중 적어도 하나를 포함할 수 있다. 본 문서의 실시예에 따른 전자 장치는 전술한 기기들에 한정되지 않는다.
본 문서의 다양한 실시예들 및 이에 사용된 용어들은 본 문서에 기재된 기술을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 해당 실시예의 다양한 변경, 균등물, 및/또는 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 본 문서에서, "A 또는 B", "A 및/또는 B 중 적어도 하나", "A, B 또는 C" 또는 "A, B 및/또는 C 중 적어도 하나" 등의 표현은 함께 나열된 항목들의 모든 가능한 조합을 포함할 수 있다. "제 1", "제 2", "첫째" 또는 "둘째" 등의 표현들은 해당 구성요소들을, 순서 또는 중요도에 상관없이 수식할 수 있고, 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 뿐 해당 구성요소들을 한정하지 않는다. 어떤(예: 제 1) 구성요소가 다른(예: 제 2) 구성요소에 "(기능적으로 또는 통신적으로) 연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로 연결되거나, 다른 구성요소(예: 제 3 구성요소)를 통하여 연결될 수 있다.
본 문서에서 사용된 용어 "모듈"은 하드웨어, 소프트웨어 또는 펌웨어로 구성된 유닛을 포함하며, 예를 들면, 로직, 논리 블록, 부품, 또는 회로 등의 용어와 상호 호환적으로 사용될 수 있다. 모듈은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는 최소 단위 또는 그 일부가 될 수 있다. 예를 들면, 모듈은 ASIC(application-specific integrated circuit)으로 구성될 수 있다.
본 문서의 다양한 실시예들은 기기(machine)(예: 컴퓨터)로 읽을 수 있는 저장 매체(machine-readable storage media)(예: 내장 메모리(136) 또는 외장 메모리(138))에 저장된 명령어를 포함하는 소프트웨어(예: 프로그램(140))로 구현될 수 있다. 기기는, 저장 매체로부터 저장된 명령어를 호출하고, 호출된 명령어에 따라 동작이 가능한 장치로서, 개시된 실시예들에 따른 전자 장치(예: 전자 장치(101))를 포함할 수 있다. 상기 명령이 프로세서(예: 프로세서(120))에 의해 실행될 경우, 프로세서가 직접, 또는 상기 프로세서의 제어하에 다른 구성요소들을 이용하여 상기 명령에 해당하는 기능을 수행할 수 있다. 명령은 컴파일러 또는 인터프리터에 의해 생성 또는 실행되는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, ‘비일시적’은 저장매체가 신호(signal)를 포함하지 않으며 실재(tangible)한다는 것을 의미할 뿐 데이터가 저장매체에 반영구적 또는 임시적으로 저장됨을 구분하지 않는다.
일시예에 따르면, 본 문서에 개시된 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 온라인으로 배포될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
다양한 실시예들에 따른 구성 요소(예: 모듈 또는 프로그램) 각각은 단수 또는 복수의 개체로 구성될 수 있으며, 전술한 해당 서브 구성 요소들 중 일부 서브 구성 요소가 생략되거나, 또는 다른 서브 구성 요소가 다양한 실시예에 더 포함될 수 있다. 대체적으로 또는 추가적으로, 일부 구성 요소들(예: 모듈 또는 프로그램)은 하나의 개체로 통합되어, 통합되기 이전의 각각의 해당 구성 요소에 의해 수행되는 기능을 동일 또는 유사하게 수행할 수 있다. 다양한 실시예들에 따른, 모듈, 프로그램 또는 다른 구성 요소에 의해 수행되는 동작들은 순차적, 병렬적, 반복적 또는 휴리스틱하게 실행되거나, 적어도 일부 동작이 다른 순서로 실행되거나, 생략되거나, 또는 다른 동작이 추가될 수 있다.

Claims (20)

  1. 전자 장치(device)에 있어서,
    블루투스 저 에너지(Bluetooth Low Energy: BLE) 무선 통신을 제공하도록 설정된 무선 통신 회로: 및
    상기 무선 통신 회로와 동작이 가능하도록 연결된 제어 회로를 포함하고, 상기 제어 회로는,
    상기 무선 통신 회로를 이용하여 복수의 외부 장치들과 메쉬(mesh) 네트워크를 형성(form)하고, 상기 메쉬 네트워크를 형성하는 것은, 외부 장치를, 상기 메쉬 네트워크 상의 노드(node)로 만드는 프로비저닝(provisioning) 프로세스를 수행하는 것을 포함하고,
    상기 무선 통신 회로를 이용하여, 상기 메쉬 네트워크 상의 제1 장치로부터, 상기 제1 장치와 연관된 제1 식별 정보(ID) 및 상기 메쉬 네트워크 상에 없는 제2 장치와 연관된 제2 식별 정보를 포함하는 제1 정보를 수신하고,
    상기 제1 장치가 상기 프로비저닝 프로세스를 수행할 수 있는지를 판단하고,
    상기 제2 장치에 대한 상기 프로비저닝 프로세스를 수행하는 역할(role)을 상기 제1 장치에 제공하고,
    상기 제1 장치로부터, 상기 무선 통신 회로를 이용하여, 상기 제2 장치에 대한 상기 프로비저닝 프로세스의 결과, 및 상기 제2 장치와 연관된 장치 정보를 포함하는 제2 정보를 수신하도록 설정되는 것을 특징으로 하는, 전자 장치.
  2. 제1항에 있어서,
    상기 프로비저닝 프로세스는, 네트워크 키를 제공하는 동작 및 상기 네트워크에 추가된 외부 장치를 위한 식별정보(ID)를 생성하는 동작을 포함하는 것을 특징으로 하는, 전자 장치.
  3. 제2항에 있어서,
    상기 제어 회로는, 상기 제1 장치로 하여금, 상기 제2 장치에 대한 상기 프로비저닝 프로세스에서, 상기 제2 장치에, 상기 제 1 장치에 대한 프로비저닝 프로세스에 사용된 네트워크 키와 동일한 네트워크 키를 상기 제 2 장치에 제공하도록 설정되는 것을 특징으로 하는, 전자 장치.
  4. 제1항에 있어서,
    상기 제어 회로는, 상기 제2 정보를 수신한 후에 상기 제1 장치를 통하여 상기 제2 장치로부터 메시지를 수신하도록 설정되는 것을 특징으로 하는, 전자 장치.
  5. 제1항에 있어서,
    상기 제어 회로는,
    상기 제1 장치가 상기 프로비저닝 프로세스를 수행할 능력이 있는지 여부를 판단하고,
    상기 제2 장치로부터 상기 제2 식별 정보를 직접(directly) 수신하지 못한 경우에, 상기 제2 장치에 대한 프로비저닝 프로세스를 수행하는 역할을 상기 제1 장치에 제공하도록 설정되는 것을 특징으로 하는, 전자 장치.
  6. 제1항에 있어서,
    상기 제어 회로는,
    상기 메쉬 네트워크상의 제3 장치로부터 상기 제3 장치와 연관된 제3 식별 정보 및 상기 메쉬 네트워크 상에 없는 제4 장치와 연관된 제4 식별 정보를 수신한 경우,
    상기 제1 장치 및 상기 제 3 장치에 각각 상기 제2 장치에 대한 상기 프로비저닝 프로세스를 수행하는 역할 및 상기 제4 장치에 대한 상기 프로비저닝 프로세스를 수행하는 역할을 제공하도록 설정되는 것을 특징으로 하는, 전자 장치.
  7. 제1항에 있어서,
    상기 제어 회로는,
    상기 메쉬 네트워크상의 제3 장치로부터 상기 제3 장치와 연관된 제3 식별 정보 및 상기 메쉬 네트워크 상에 없는 제4 장치와 연관된 제4 식별 정보를 수신한 경우,
    지정된 시간 구간에 따라 상기 제1 장치 및 상기 제 3 장치에 각각 상기 제2 장치에 대한 상기 프로비저닝 프로세스를 수행하는 역할 및 상기 제4 장치에 대한 상기 프로비저닝 프로세스를 수행하는 역할을 순차적으로 제공하도록 설정되는 것을 특징으로 하는, 전자 장치.
  8. 제1항에 있어서,
    상기 제어 회로는,
    상기 제1 장치가 상기 프로비저닝 프로세스를 수행할 수 있는지에 대한 판단 결과, 상기 제1 장치가 상기 프로비저닝 프로세스에 대한 역할을 지원하지 않는 경우,
    상기 제1 장치에 인접한 제5 장치에 상기 제2 장치에 대한 상기 프로비저닝을 수행하는 역할을 제공하도록 설정되는 것을 특징으로 하는, 전자 장치.
  9. 제1항에 있어서,
    상기 제어 회로는, 상기 무선 통신 모듈을 이용하여, 상기 복수의 장치들로부터 상기 복수의 장치들 각각이 지원하는 적어도 하나의 역할에 대한 정보를 수신하도록 설정되는 것을 특징으로 하는, 전자 장치.
  10. 프로세서에 의하여 적어도 하나의 동작을 수행하도록 설정된 명령들(instructions)이 저장된 컴퓨터 판독 가능한(computer readable) 기록 매체에 있어서,
    상기 적어도 하나의 동작은,
    복수의 외부 장치들과 메쉬 네트워크를 형성하고, 상기 메쉬 네트워크를 형성하는 것은, 외부 장치를, 상기 메쉬 네트워크 상의 노드로 만드는 프로비저닝 프로세스를 수행하는 것을 포함하고,
    상기 메쉬 네트워크 상의 제1 장치로부터, 상기 제1 장치와 연관된 제1 식별 정보 및 상기 메쉬 네트워크 상에 없는 제2 장치와 연관된 제2 식별 정보를 포함하는 제1 정보를 수신하고,
    상기 제1 장치가 상기 프로비저닝 프로세스를 수행할 수 있는지를 판단하고,
    상기 제2 장치에 대한 상기 프로비저닝 프로세스를 수행하는 역할을 상기 제1 장치에 제공하고,
    상기 제1 장치로부터 상기 제2 장치에 대한 상기 프로비저닝 프로세스의 결과, 및 상기 제2 장치와 연관된 장치 정보를 포함하는 제2 정보를 수신하는 동작을 포함하는 것을 특징으로 하는, 컴퓨터 판독 가능한 기록 매체.
  11. 제10항에 있어서,
    상기 프로비저닝 프로세스는, 네트워크 키를 제공하는 동작 및 상기 네트워크에 추가된 외부 장치를 위한 식별정보(ID)를 생성하는 동작을 포함하는 것을 특징으로 하는, 컴퓨터 판독 가능한 기록 매체.
  12. 제11항에 있어서,
    상기 적어도 하나의 동작은,
    상기 제1 장치로 하여금, 상기 제2 장치에 대한 상기 프로비저닝 프로세스에서, 상기 제2 장치에 상기 제 1 장치에 대한 프로비저닝 프로세스에 사용된 네트워크 키와 동일한 네트워크 키를 상기 제 2 장치에 제공하는 동작을 더 포함하는 것을 특징으로 하는, 컴퓨터 판독 가능한 기록 매체.
  13. 제10항에 있어서,
    상기 적어도 하나의 동작은,
    상기 제2 정보를 수신한 후에 상기 제1 장치를 통하여 상기 제2 장치로부터 메시지를 수신하는 동작을 더 포함하는 것을 특징으로 하는, 컴퓨터 판독 가능한 기록 매체.
  14. 제10항에 있어서,
    상기 적어도 하나의 동작은,
    상기 제1 장치가 상기 프로비저닝 프로세스를 수행할 능력이 있는지 여부를 판단하고,
    상기 제2 장치로부터 상기 제2 장치 정보를 직접 수신하지 못한 경우에, 상기 제2 장치에 대한 프로비저닝 프로세스를 수행하는 역할을 상기 제1 장치에 제공하는 동작을 포함하는 것을 특징으로 하는, 컴퓨터 판독 가능한 기록 매체.
  15. 제10항에 있어서,
    상기 메쉬 네트워크상의 제3 장치로부터 상기 제3 장치와 연관된 제3 식별 정보 및 상기 메쉬 네트워크 상에 없는 제4 장치와 연관된 제4 식별 정보를 수신한 경우,
    상기 제1 장치 및 상기 제 3 장치에 각각 상기 제2 장치에 대한 상기 프로비저닝 프로세스를 수행하는 역할 및 상기 제4 장치에 대한 상기 프로비저닝 프로세스를 수행하는 역할을 제공하는 동작을 더 포함하는 것을 특징으로 하는, 컴퓨터 판독 가능한 기록 매체.
  16. 제10항에 있어서,
    상기 적어도 하나의 동작은,
    상기 메쉬 네트워크상의 제3 장치로부터 상기 제3 장치와 연관된 제3 식별 정보 및 상기 메쉬 네트워크 상에 없는 제4 장치와 연관된 제4 식별 정보를 수신한 경우,
    지정된 시간 구간에 따라 상기 제1 장치 및 상기 제 3 장치에 각각 상기 제2 장치에 대한 상기 프로비저닝 프로세스를 수행하는 역할 및 상기 제4 장치에 대한 상기 프로비저닝 프로세스를 수행하는 역할을 순차적으로 제공하는 동작을 더 포함하는 것을 특징으로 하는, 컴퓨터 판독 가능한 기록 매체.
  17. 제10항에 있어서,
    상기 적어도 하나의 동작은,
    상기 제1 장치가 상기 프로비저닝 프로세스를 수행할 수 있는지에 대한 판단 결과, 상기 제1 장치가 상기 프로비저닝 프로세스에 대한 역할을 지원하지 않는 경우,
    상기 제1 장치에 인접한 제5 장치에 상기 제2 장치에 대한 상기 프로비저닝을 수행하는 역할을 제공하는 동작을 더 포함하는 것을 특징으로 하는, 컴퓨터 판독 가능한 기록 매체.
  18. 제10항에 있어서,
    상기 적어도 하나의 동작은,
    상기 복수의 장치들로부터 상기 복수의 장치들 각각이 지원하는 적어도 하나의 역할에 대한 정보를 수신하는 동작을 더 포함하는 것을 특징으로 하는, 컴퓨터 판독 가능한 기록 매체.
  19. 전자 장치에 있어서,
    블루투스 저 에너지 무선 통신을 제공하도록 설정된 무선 통신 회로:
    상기 전자 장치와 연관된 제1 식별 정보를 저장하도록 설정된 메모리: 및
    상기 무선 통신 회로 및 상기 메모리와 동작이 가능하도록 연결된 제어 회로를 포함하고,
    상기 제어 회로는,
    상기 무선 통신 회로를 이용하여, 상기 전자 장치가, 외부 장치를 메쉬 네트워크 상의 노드로 만드는 프로비저닝 프로세스에 의해, 프로비저너로서의 제1 장치를 포함하는 상기 메쉬 네트워크 상의 노드가 되도록 하고,
    상기 무선 통신 회로를 통하여, 상기 메쉬 네트워크 상에 없는 제2 장치로부터 상기 제2 장치와 연관된 제2 식별 정보를 수신하고,
    상기 무선 통신 회로를 통하여, 상기 제2 식별 정보를 상기 제1 장치에 전송하고,
    상기 무선 통신 회로를 통하여, 상기 제1 장치로부터 상기 제2 장치에 대한 상기 프로비저닝 프로세스를 수행하는 역할을 수신하고,
    상기 무선 통신 회로를 통하여, 상기 제2 장치에 대한 상기 프로비저닝 프로세스를 수행하고,
    상기 무선 통신 회로를 통하여, 상기 제2 장치에 대한 상기 프로비저닝 프로세스의 결과 및 상기 제2 장치와 연관된 장치 정보를 포함하는 정보를 상기 제1 장치에 제공하도록 설정된 것을 특징으로 하는, 전자 장치.
  20. 제19항에 있어서,
    상기 제어 회로는, 상기 무선 통신 회로를 통하여, 상기 제1 장치에 상기 전자 장치가 지원 가능한 적어도 하나의 역할에 대한 정보를 제공하도록 설정되는 것을 특징으로 하는, 전자 장치.
KR1020170177396A 2017-12-21 2017-12-21 네트워크에서 노드를 제어하는 전자 장치 및 제어 방법 KR102331886B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020170177396A KR102331886B1 (ko) 2017-12-21 2017-12-21 네트워크에서 노드를 제어하는 전자 장치 및 제어 방법
US16/203,774 US10932107B2 (en) 2017-12-21 2018-11-29 Electronic device and method for controlling node in network
CN201811547158.5A CN109951362B (zh) 2017-12-21 2018-12-18 用于控制网络中的节点的电子装置和方法
EP18215450.0A EP3503670B1 (en) 2017-12-21 2018-12-21 Electronic device and computer-readable recording medium for controlling nodes in a network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170177396A KR102331886B1 (ko) 2017-12-21 2017-12-21 네트워크에서 노드를 제어하는 전자 장치 및 제어 방법

Publications (2)

Publication Number Publication Date
KR20190075644A true KR20190075644A (ko) 2019-07-01
KR102331886B1 KR102331886B1 (ko) 2021-11-29

Family

ID=65009574

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170177396A KR102331886B1 (ko) 2017-12-21 2017-12-21 네트워크에서 노드를 제어하는 전자 장치 및 제어 방법

Country Status (4)

Country Link
US (1) US10932107B2 (ko)
EP (1) EP3503670B1 (ko)
KR (1) KR102331886B1 (ko)
CN (1) CN109951362B (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210116359A (ko) 2020-03-16 2021-09-27 이광희 Ble 메쉬 그룹 설정이 가능한 스마트 조명 장치 및 이를 이용한 조명 제어 방법
KR102497291B1 (ko) * 2021-12-29 2023-02-08 주식회사 네오스텍 블루투스 메시 네트워크 기반 조명모듈을 활용한 실내측위 및 제어 시스템

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108199905A (zh) * 2018-02-01 2018-06-22 乐鑫信息科技(上海)有限公司 Mesh网络及其mesh设备和配网方法
EP3766276B1 (en) * 2018-03-16 2023-11-15 Telefonaktiebolaget Lm Ericsson (Publ) Methods and nodes for obtaining information regarding a bluetooth mesh network
US10701171B2 (en) * 2018-09-17 2020-06-30 Qualcomm Incorporated Message caching for a node in a wireless mesh network
WO2020160259A1 (en) * 2019-01-30 2020-08-06 Practechal Solutions,Inc A method and system for surveillance system management
CN109819427B (zh) * 2019-03-06 2021-01-26 乐鑫信息科技(上海)股份有限公司 用于蓝牙Mesh网络启动配置的方法
EP3745556B1 (en) * 2019-05-29 2022-02-23 ABB Schweiz AG A computer-implemented method for wireless communicating at local level with the control nodes of an electric system
US11917520B2 (en) 2019-09-11 2024-02-27 Carrier Corporation Bluetooth mesh routing with subnets
CN112584364B (zh) * 2019-09-30 2024-03-08 阿里巴巴集团控股有限公司 蓝牙网络及其通信方法、设备和存储介质
CN110808887B (zh) * 2019-10-24 2021-11-30 金牌厨柜家居科技股份有限公司 一种带有蓝牙mesh通讯的家用电器语音控制装置
EP3817332B1 (en) * 2019-10-30 2024-04-24 Secure Thingz Limited Data provisioning device for provisioning a data processing entity
WO2021092724A1 (zh) * 2019-11-11 2021-05-20 深圳市汇顶科技股份有限公司 设备管理的方法和ble设备
WO2021136719A1 (en) 2020-01-02 2021-07-08 Signify Holding B.V. A method of provisioning node devices of a network from a backend server, a node device and a backend server
CN113259949B (zh) * 2020-02-11 2023-05-26 阿里巴巴集团控股有限公司 网络配置系统及方法、电子设备、网络配置系统的组建方法及设备
CN113411790A (zh) * 2020-03-16 2021-09-17 瑞昱半导体股份有限公司 低功耗的蓝牙网格网络系统及其通信方法
CN113411789A (zh) * 2020-03-16 2021-09-17 瑞昱半导体股份有限公司 具有控制权分享机制的蓝牙网格网络系统及其控制方法
CN113490188A (zh) * 2020-03-16 2021-10-08 瑞昱半导体股份有限公司 具有迅速配网机制的蓝牙网格网络系统及其配网方法
US20210329436A1 (en) * 2020-04-17 2021-10-21 Bot3, Inc. Bluetooth device networking system and method based on ble
CN111556477B (zh) * 2020-04-26 2020-12-25 天津九安医疗电子股份有限公司 建立去中心化的蓝牙SIG mesh网络的方法及应用该方法的智能照明系统
US20230354062A1 (en) * 2020-09-17 2023-11-02 Jdrf Electromag Engineering Inc. Autonomous provisioning of a decentralized network
TW202226787A (zh) * 2020-12-15 2022-07-01 聚眾聯合科技股份有限公司 網路設備控制方法和裝置
US20230047409A1 (en) * 2021-08-13 2023-02-16 Stmicroelectronics International N.V. Devices and methods for parallel provisioning of node networks
CN115296989B (zh) * 2022-07-01 2024-04-16 浙江艾克斯精灵人工智能科技有限公司 订阅地址的配置方法、相关设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140018002A1 (en) * 2012-07-12 2014-01-16 Samsung Electronics Co., Ltd. Network, master, hub and method for providing a bluetooth infrastructure
WO2017222449A1 (en) * 2016-06-23 2017-12-28 Telefonaktiebolaget Lm Ericsson (Publ) Path optimized multi-hop network

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101227203A (zh) * 2008-01-25 2008-07-23 东南大学 一种微型自适应配置式无线传感器网络设备
EP2355563A1 (en) * 2010-02-10 2011-08-10 Cheng Uei Precision Industry Co., Ltd. Method for automatic pairing to a wireless network
EP2580899B1 (en) * 2010-06-11 2014-04-30 ABB Research LTD An energy efficient method for communication between a wireless sensor network and an industrial control system
CN102469406A (zh) * 2010-11-18 2012-05-23 上海启电信息科技有限公司 一种基于无线传感技术的移动定位标识
WO2012139288A1 (en) * 2011-04-13 2012-10-18 Renesas Mobile Corporation Sensor network information collection via mobile gateway
KR101870835B1 (ko) * 2014-06-24 2018-06-25 구글 엘엘씨 메쉬 네트워크 커미셔닝
WO2016153278A1 (ko) * 2015-03-24 2016-09-29 엘지전자(주) 블루투스를 이용한 메쉬 네트워크에서 데이터를 송수신하기 위한 방법 및 장치
KR102464668B1 (ko) 2015-03-27 2022-11-10 삼성전자주식회사 메시 네트워크를 동적으로 형성하기 위한 메커니즘
US10462661B2 (en) * 2015-04-30 2019-10-29 Lg Electronics Inc. Method and device for transmitting/receiving data using bluetooth mesh network
US10231108B2 (en) * 2015-12-11 2019-03-12 Google Llc Virtual addressing for mesh networks
US20170230784A1 (en) * 2016-02-04 2017-08-10 Lg Electronics Inc. Method and apparatus for transmitting and receiving a data in a mesh network using bluetooth
US10075831B2 (en) * 2016-04-11 2018-09-11 Lg Electronics Inc. Method and apparatus for transmitting and receiving data in mesh network using Bluetooth
US10433272B2 (en) * 2016-05-17 2019-10-01 Googel LLC Distributed coordination of mesh network configuration updates
WO2018097687A1 (ko) * 2016-11-28 2018-05-31 엘지전자(주) 블루투스를 이용한 메쉬 네트워크에서 데이터를 송수신하기 위한 방법 및 장치
US20190089806A1 (en) * 2017-09-15 2019-03-21 Qualcomm Incorporated Provisioning a device for use in a personal area network

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140018002A1 (en) * 2012-07-12 2014-01-16 Samsung Electronics Co., Ltd. Network, master, hub and method for providing a bluetooth infrastructure
WO2017222449A1 (en) * 2016-06-23 2017-12-28 Telefonaktiebolaget Lm Ericsson (Publ) Path optimized multi-hop network

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210116359A (ko) 2020-03-16 2021-09-27 이광희 Ble 메쉬 그룹 설정이 가능한 스마트 조명 장치 및 이를 이용한 조명 제어 방법
KR102497291B1 (ko) * 2021-12-29 2023-02-08 주식회사 네오스텍 블루투스 메시 네트워크 기반 조명모듈을 활용한 실내측위 및 제어 시스템

Also Published As

Publication number Publication date
EP3503670B1 (en) 2021-01-27
US10932107B2 (en) 2021-02-23
CN109951362B (zh) 2022-04-19
KR102331886B1 (ko) 2021-11-29
CN109951362A (zh) 2019-06-28
EP3503670A1 (en) 2019-06-26
US20190200193A1 (en) 2019-06-27

Similar Documents

Publication Publication Date Title
KR102331886B1 (ko) 네트워크에서 노드를 제어하는 전자 장치 및 제어 방법
KR102208438B1 (ko) 근접 서비스 데이터 송신 방법 및 그 전자 장치
JP7317242B2 (ja) ブルートゥース接続方法、システム、および電子デバイス
KR102600892B1 (ko) 블루투스 저전력을 이용하여 통신을 수행하는 장치 및 방법
US9853969B2 (en) Bluetooth low energy hostless private address resolution
US9686676B2 (en) Method, apparatus, and computer program product for a server controlled device wakeup
US20170372600A1 (en) Method, apparatus, and computer program product for local control through intermediate device
US9990480B2 (en) Method, apparatus and storage medium for setting smart device management account
KR102473262B1 (ko) 통신 연결의 형성 또는 해제를 제어하는 전자 장치 및 그 동작 방법
US20160212194A1 (en) Method, apparatus, and computer program product for device control
US9509515B2 (en) Method and apparatus for registering devices capable of device-to-device communication in server
US20200221293A1 (en) Network registration method of internet of things device, and device therefor
EP3389332B1 (en) Commissioning of a plurality of devices
KR20180121170A (ko) 전자 장치 및 전자 장치의 근접 디스커버리 방법
US11647564B2 (en) Apparatus and method for performing data communication in NAN protocol-based network environment
KR102373548B1 (ko) 근거리 통신 연결을 위한 전자 장치 및 방법
US20220377553A1 (en) Electronic device and method for performing peer to peer service in electronic device
KR20190098320A (ko) 신호 강도 대역에 기반한 장치 관리 방법 및 이를 위한 전자 장치
KR102456913B1 (ko) 단말 대 단말 통신을 수행하는 전자 장치 및 그 방법
KR20200068068A (ko) IoT 장치를 등록하는 전자 장치, 서버 및 그 작동 방법
KR20190076175A (ko) 메쉬 네트워크에서 커버리지를 이탈한 전자 장치를 유지하기 위한 장치 및 방법
KR102238897B1 (ko) 근접 서비스 데이터 송신 방법 및 그 전자 장치
KR20210101998A (ko) 전자 장치 및 전자 장치에서의 p2p 서비스 수행 방법
Kumar et al. Bluetooth
KR20210051084A (ko) 암호화 통신을 수행하기 위한 전자 장치와 그 동작 방법

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant