스레드 및 IPv6

Matter는 운영 통신에 IPv6를 사용하고 IPv6 UnicastMulticast 주소 지정을 모두 활용하여 노드 및 그룹에 각각 액세스합니다.

저전력

일부 Matter 노드는 유선으로 연결되어 있으며 라디오를 계속 켜둘 수 있는 에너지 예산이 있습니다. 센서와 같은 다른 유형의 노드는 배터리로 수년 동안 실행되어야 하며 라디오를 Thread와 같은 저전력 네트워크에서 작동해야 합니다. 프록시 아키텍처는 Thread 절전 모드 엔드 기기와 함께 전원이 공급되는 노드가 에너지 집약적인 트랜잭션으로부터 하위 노드를 보호하는 네트워크 수준 및 애플리케이션 수준 기능을 모두 제공할 수 있도록 합니다.

Matter의 기본적인 측면은 Wi-Fi 및 이더넷과 같은 높은 처리량 네트워크 매체뿐만 아니라 Thread와 같은 짧은 지연 시간, 낮은 대역폭에서도 작동한다는 것입니다. Wi-Fi의 모든 Multicast 패킷이 Thread으로 브리징되면 네트워크에 과부하가 걸리고 잠재적으로 네트워크가 플러딩될 수 있습니다. Thread의 목표는 높은 대역폭 데이터 전송이 아니라 저전력, 짧은 지연 시간 메시 네트워킹에서 IPv6를 사용 설정하는 것입니다. 로컬 네트워크에서 스레드의Thread ICMPv6 핑은 일반적으로 수십 밀리초의 RTT 미만이지만 총 대역폭은 IEEE 802.15.4 PHY에서 250kbps로 제한됩니다. 패킷 재전송 및 오버헤드로 인해 일반적인 최대 대역폭은 약 125kbps입니다. 즉, Wi-Fi보다 훨씬 적습니다.

IEEE 802.15.4 PHY의 프레임은 127바이트이지만 IPv6 패킷의 가장 큰 (일반적인) 최대 전송 단위 (MTU)는 Thread 1280바이트입니다. 따라서 IPv6 패킷은 여러 PHY 프레임으로 분할해야 하는 경우가 많습니다. 이 프로세스는 RFC4944에 의해 정의됩니다.

자세한 내용은 IPv6 주소 지정Thread 기본사항에서 openthread.io를 참고하세요.

보더 라우터

그렇다면 노드는 동일한 패브릭 내에서 두 전송 매체에서 어떻게 공존할 수 있을까요? 두 네트워크 모두 애플리케이션 수준의 Matter 사용자 인증 정보를 공유하지만 동일한 링크 기술을 공유하지는 않습니다. 이 시나리오에서는 연결을 사용 설정하기 위해 Thread 보더 라우터 (BR) 네트워크가 필요합니다. BR은 스텁 IPv6 라우터입니다.

스텁 라우터 는 스텁 네트워크와 일반 네트워크 간의 연결을 사용 설정합니다. 스텁 네트워크 는 구성원에게 외부 연결을 제공하지만 다른 네트워크 간의 전송 네트워크 경로로 사용되지 않는 '라스트 마일' 네트워크입니다. 일반적으로 Matter 스텁 네트워크는 Thread-기반입니다. 스텁 네트워크에 관한 자세한 내용은 RFC 초안 을 참고하세요.

따라서 BR은 스텁 네트워크와 로컬 Wi-Fi 또는 이더넷 네트워크인 인접 인프라 네트워크 간의 링크 역할을 합니다. 스레드 네트워크와 관련된 패킷만 Thread 전달합니다.

이 프로세스는 다른 IPv6 프리픽스를 Thread 및 인접 인프라 네트워크에 할당하여 수행됩니다. 따라서 BR 은 Thread IPv6 프리픽스로 또는 Thread IPv6 프리픽스에서 유니캐스트만 전달합니다.

보더 라우터는 다음 작업도 담당합니다.

  • 스레드 및 인접 인프라 네트워크 모두에 IPv6 프리픽스 및 경로를 자동으로 구성하여 스레드 보더 라우터의 양쪽 호스트가 통신할 수 있도록 합니다.ThreadThread
  • Thread 노드를 대신하여 mDNS DNS-SD 검색 패킷을 게시하므로 인접 인프라 네트워크에서 검색할 수 있습니다.

자세한 내용은 보더 라우터 openthread.io의 가이드를 참고하세요.

IPv6 멀티캐스트

그룹 메시지는 여러 Matter 노드를 Multicast 통해 동시에 제어할 수 있으므로 중요합니다. 이 트래픽을 Thread 네트워크로 라우팅하기 위해 MatterThread 모두 Unicast 프리픽스 기반 IPv6 Multicast 주소 지정 체계를 RFC 3306에 의해 정의된 구현합니다.

이 메서드를 사용하면 공유 IPv6 Unicast 프리픽스를 기반으로 Multicast 패킷의 대상 노드를 선택할 수 있습니다.

예를 들어 Matter Multicast 주소 는 다음과 같을 수 있습니다.

FF35:0040:FD<Fabric ID>00:<Group ID>

표 1에서는 이 주소가 구성되는 방식을 자세히 설명합니다.

표 1: Unicast 프리픽스 기반 IPv6 주소
비트 설명
12비트 0xFF3
4비트 0x05

범위: 사이트 로컬

8비트 0x00

예약됨

8비트 0x40

64비트 길이의 프리픽스를 나타냅니다.

8비트 0xFD

ULA 프리픽스를 지정합니다.

56비트 패브릭 ID
8비트 0x00
16비트 그룹 ID

자세한 내용은 Multicast 섹션과 Thread 기본사항 및 RFC 자체를 참고하세요.

IPv6 Multicast 주소가 형성되면 패브릭 ID의 상위 56비트도 포함됩니다. 중요한 의미는 Multicast의 범위가 패브릭 내에 있는 반면 Unicast 주소는 패브릭 간에 공유된다는 것입니다. 패브릭이 많은 노드는 각 패브릭에서 범위가 지정된 겹치는 노드 그룹을 정의하는 여러 Multicast 주소를 가질 수 있습니다.

포트

Matter는 멀티캐스트에 포트 5540을 사용합니다.