커미셔닝 가능한 검색
커미셔닝 가능한 검색은 커미셔닝 전에 발생하며 커미셔닝 가능한 노드를 검색하고 식별하는 프로세스를 나타냅니다. 커미셔닝 가능한 노드가 자체적으로 광고할 수 있는 세 가지 방법이 있습니다.
두 방법 모두에서 커미셔닝 가능한 노드는 표 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진수의 16비트 공급업체 ID입니다.
- pppp 는 16진수의 16비트 제품 ID입니다.
커미셔너가 커미셔니에 연결될 때마다 둘 다 고유한 IPv6 링크-로컬 주소를 구성하여 Wi-Fi 레이어에서 연결을 사용 설정합니다. 이 시점에서 검색은 다음 섹션에서 다루는 DNS-SD 메서드의 경우와 동일하게 계속됩니다.
또한 Wi-Fi 소프트 AP는 IPv4용 DHCP와 정보 요소(IE) 를 구현하여 공급업체별 추가 정보를 노출할 수 있습니다. IE 는 맞춤 정보가 다른 시스템으로 전달될 수 있도록 하는 802.11 (Wi-Fi) 관리 프레임 내의 가변 길이 필드입니다.
커미셔너 스캔 중에 Wi-Fi 채널 1, 6, 11이 선호되어야 하지만 로컬 스펙트럼 규정에서 허용하는 모든 채널을 스캔해야 합니다.
Wi-Fi 소프트 AP는 운영 검색에 사용되지 않습니다.
DNS-SD
이 경우 커미셔니는 노드에서 렌더링되는 서비스에 관한 정보가 포함된 도메인 이름 서비스 - 서비스 검색 (DNS-SD) 광고를 통해 검색됩니다. DNS-SD에 관한 자세한 내용은 RFC 6762를 참고하세요. 다음과 같은 경우에 기기 검색의 일반적인 방법입니다.
- 커미셔니가 이더넷에 연결되어 있으므로 암호화되지 않은 네트워크 매체에 물리적으로 액세스할 수 있습니다.
- 커미셔니가 대역 외 수단으로 Wi-Fi 또는 Thread 네트워크 에 가입했습니다.
- 커미셔니가 이미 다른 패브릭에 커미셔닝되었으며 Wi-Fi/Thread 네트워크에 가입했습니다. 이 경우 커미셔니는 BLE 광고를 사용하거나 소프트 AP를 만들 수 없습니다. 따라서 모든 보조 패브릭은 이 방법을 통해 프로비저닝됩니다.
Thread 기기는 DNS-SD를 직접 사용하지 않고 프록시된 메서드를 대신 사용합니다.Thread 이 메서드는 DNS-SD 서비스 등록 프로토콜 및 광고 프록시에 의해 정의됩니다. Thread 기기는 SRP 서비스 일반적으로 Thread Border Router에서 제공하는 에 자체적으로 등록합니다. 이 서비스는 이러한 프로토콜에서 생성된 추가 트래픽으로 Thread 네트워크에 부담을 주지 않고 등록된 각 Thread 노드를 대신하여 mDNS 트래픽을 처리합니다.
기기 검색을 위한 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와 같은 다른 전송을 사용할 수 있습니다.