커미셔닝 가능한 기기 검색
커미셔닝 가능 검색은 커미셔닝 전에 발생하며 커미셔닝 가능한 노드를 검색하고 식별하는 프로세스를 나타냅니다. 커미셔닝 가능한 노드가 자체적으로 광고할 수 있는 세 가지 방법이 있습니다.
- Bluetooth 저전력 (BLE)
- Wi-Fi 소프트 AP
- IP 네트워크의 DNS-SD(기존 IP 지원 네트워크라고도 함)
두 방법 모두에서 커미셔닝 가능한 노드는 표 1에 표시된 대로 정보를 광고합니다.
필드 | 길이 | 필수 |
---|---|---|
분류자 | 12비트 | 예 |
공급업체 ID | 16비트 | 아니요 |
제품 ID | 16비트 | 아니요 |
확장 데이터 | 가변 | 아니요 |
Matter 사양에 따라 공급업체 ID와 제품 ID는 필수는 아니지만 포함할 수 있습니다. 식별자는 필수이며, 동일한 기기가 동시에 여러 개 연결된 경우 올바른 기기를 프로비저닝하는 커미셔닝 프로세스 중에 중요합니다. 확장 데이터는 맞춤 공급업체별 정보를 인코딩하는 데 사용할 수 있습니다.
많은 기기가 전원 공급 후 짧은 시간 (~3~15분) 동안 광고합니다. 기본 제어가 패브릭에서 시작되지 않거나 잠금 장치와 같은 기기의 자동 미프로비저닝 광고가 안전하지 않기 때문에 다른 기기는 광고를 시작하면 안 됩니다. 표 2에는 이 동작이 요약되어 있습니다.
기본 기기 기능 | 자동 공지 |
---|---|
도어락 및 장벽 액세스 기기 | 아니요 |
대부분의 제어는 패브릭에서 시작됩니다. 예를 들어 스위치나 전구입니다. | 예 |
대부분의 제어는 패브릭에서 시작되지 않습니다. 예를 들어 식기세척기나 냉장고입니다. | 아니요 |
저전력 블루투스
이 광고 모드에서 커미셔너는 BLE 광고를 보게 됩니다. 커미셔너는 일반 액세스 프로필 (GAP) 주변기기 인터페이스를 구현하고 커미셔닝되지 않은 상태를 주기적으로 광고해야 합니다. 기기가 켜진 후 처음 30초 동안 광고 빈도는 20~60밀리초 간격으로 높아야 합니다.
30초 후 기기는 150~1,500밀리초 간격으로 낮은 빈도로 광고해야 합니다. 첫 번째 패브릭에 커미셔닝되면 기기는 BLE 광고를 중지해야 합니다.
커미셔너는 스캔 요청을 발행할 필요가 없습니다. 세 개의 BLE 광고 채널(37(2402MHz), 38(2426MHz), 39(2480MHz))에서 수동 검색을 실행해야 합니다. 이러한 채널은 스펙트럼에서 Wi-Fi 채널과의 중복이 최소화된 지역에서 선택되어 교차 무선 간섭을 최소화합니다.
BLE는 운영 검색에 사용되지 않습니다.
Wi-Fi 소프트 AP
Wi-Fi 소프트 AP를 사용하는 경우 커미셔너는 임시 소프트 액세스 포인트 (소프트 AP) 네트워크를 통해 검색됩니다. 네트워크의 SSID (네트워크 이름)는 MATTER-ddd-vvvv-pppp 형식입니다. 여기서
- ddd는 16진수의 12비트 식별자입니다.
- vvvv는 16비트 공급업체 ID(16진수)입니다.
- pppp는 16비트 제품 ID(16진수)입니다.
커미셔너가 커미셔니에 연결될 때마다 둘 다 고유한 IPv6 링크-로컬 주소를 구성하여 Wi-Fi 레이어에서 연결을 사용 설정합니다. 이 시점부터 검색은 다음 섹션에서 다루는 DNS-SD 메서드의 경우와 동일하게 계속됩니다.
또한 Wi-Fi 소프트 AP는 IPv4용 DHCP와 정보 요소(IE)를 구현하여 공급업체별 추가 정보를 노출할 수 있습니다. IE는 맞춤 정보가 다른 시스템으로 전송되도록 지원하는 802.11 (Wi-Fi) 관리 프레임 내의 가변 길이 필드입니다.
커미셔너 스캔 중에는 Wi-Fi 채널 1, 6, 11이 선호되어야 하지만 현지 스펙트럼 규정에서 허용하는 모든 채널을 스캔해야 합니다.
Wi-Fi Soft AP는 작업 검색에 사용되지 않습니다.
DNS-SD
이 경우 커미셔너는 노드에서 렌더링된 서비스에 관한 정보가 포함된 도메인 이름 서비스 - 서비스 검색 (DNS-SD) 광고를 통해 검색됩니다. DNS-SD에 대한 자세한 내용은 RFC 6762를 참고하세요. 이는 다음과 같은 경우에 기기를 검색하는 일반적인 방법입니다.
- 커미셔너가 이더넷에 연결되어 있으므로 암호화되지 않은 네트워크 매체에 물리적으로 액세스할 수 있습니다.
- 커미셔너가 대역 외 수단으로 Wi-Fi 또는 Thread 네트워크에 가입했습니다.
- 커미셔너가 이미 다른 패브릭에 커미셔닝되었으며 Wi-Fi/Thread 네트워크에 가입했습니다. 이 경우 수수료 수령자는 BLE 광고를 사용하거나 소프트 AP를 만들 수 없습니다. 따라서 모든 보조 패브릭은 이 메서드를 통해 프로비저닝됩니다.
Thread 기기는 DNS-SD를 직접 사용하지 않고 Thread 테두리 라우터에서 제공하는 프록시 방법을 사용합니다. 이 메서드는 DNS-SD 서비스 등록 프로토콜 및 광고 프록시에 의해 정의됩니다. Thread 기기는 일반적으로 Thread 테두리 라우터에서 제공하는 SRP 서비스에 자체 등록합니다. 이 서비스는 등록된 각 Thread 노드를 대신하여 mDNS 트래픽을 처리하므로 이러한 프로토콜에서 생성된 추가 트래픽으로 Thread 네트워크에 부담을 주지 않습니다.
기기 검색을 위한 DNS-SD 인스턴스 이름은 _matterc._udp
이고 호스트 이름은 48비트 MAC 주소 또는 64비트 MAC 확장 주소로 빌드되며, A5F15790B0D15F32.local.
와 같은 16진수 문자열로 표현됩니다.
일반적으로 이 레코드는 커미셔너가 위촉될 수 있는 경우에만 광고됩니다. 하지만 커미셔닝 모드가 아닐 때도 광고를 계속할 수 있습니다. 이 동작을 확장 검색이라고 합니다.
검색 후 IPv6 주소는 AAAA 레코드에 반환되고 키/값 쌍은 DNS‑SD TXT 레코드에 반환됩니다. 키/값 쌍에는 식별자, 공급업체 ID, 제품 ID와 같은 정보가 포함됩니다. 노드는 커미셔닝 하위 유형도 공지하므로 결과를 필터링하여 특정 속성과 일치하는 커미셔너만 찾을 수 있습니다.
운영 검색
운영 검색은 커미셔닝된 노드를 검색하고 식별하는 프로세스입니다. 운영 검색은 IP 기반 DNS-SD 메서드를 통해서만 발생합니다. 노드 인스턴스 이름은 64비트 압축 패브릭 ID와 64비트 노드 ID로 구성됩니다. 그런 다음 이러한 ID는 16진수로 변환되어 2906C908D115D362-8FC7772401CD0696.local.
와 같이 하이픈으로 연결됩니다.
작동 검색은 DNS-SD 기기 검색과 동일한 타겟 호스트 이름을 공유합니다.
DNS-SD 서비스 유형은 _matter._tcp
입니다. _tcp
이름이 사용되지만 기기에서 UDP와 같은 다른 전송을 사용할 수 있습니다.