2

Core Spec 을 여섯 계층으로 읽는다

Matter 개요와 판

학습 목표
  • Core Spec 의 여섯 계층을 든다
  • 어느 계층을 언제 펼쳐 볼지 판단할 수 있다

목차가 곧 지도다

앞 코스에서 규격서는 통독하는 책이 아니라 찾아 쓰는 사전이라고 했습니다. 그러려면 어디에 무엇이 있는지를 알아야 하는데, Core Spec 은 여섯 계층으로 짜여 있고 그 목차가 곧 지도입니다.

Core Spec 을 읽는 여섯 계층 지도

위에서 아래로

응용은 기기 종류별 비즈니스 로직입니다. 클러스터 조합으로 정의되며, 우리 제품이 무엇인지를 정하는 자리입니다.

데이터 모델은 노드·엔드포인트·클러스터와 그 안의 어트리뷰트·커맨드·이벤트 구조입니다. 다음 모듈이 통째로 이 이야기입니다.

상호작용 모델은 기기 간 대화 규칙입니다. 읽고(Read) 쓰고(Write) 부르고(Invoke) 구독하는(Subscribe) 네 가지가 정해져 있습니다. 첫 판에서 이 계층을 빠뜨렸는데, 이것을 모르면 「값이 바뀔 때마다 알림이 오는 구조」를 설명할 수 없습니다.

보안은 메시지 암호화와 세션 수립과 기기 인증입니다. 세션이 둘로 나뉘는 이야기는 코스 3, 기기 인증서는 이 코스 모듈 4 와 코스 5 에서 다룹니다.

전송은 UDP 를 기본으로 쓰되 신뢰성을 위한 재전송 장치를 얹었습니다. 대용량이 필요하면 TCP 를 씁니다.

네트워크는 IPv6 이고, 그 아래가 Wi-Fi 든 이더넷이든 Thread 든 상관하지 않습니다. 앞 코스의 계층 지도가 여기 맞물립니다.

언제 어느 층을 펼치나

증상으로 층을 좁히면 찾을 곳이 정해집니다. 기기가 잘못 인식되면 응용과 데이터 모델, 값이 갱신 안 되면 상호작용 모델, 붙었다 끊기면 보안과 전송, 아예 안 보이면 네트워크입니다.

규격서를 앞에서부터 읽지 마시기 바랍니다. 증상에서 층으로, 층에서 장으로 좁혀 들어가는 것이 요령입니다.

용어