25 May 2022

在智能家居物联网领域,最近有一个项目叫 Matter 协议栈,之前的名字叫 CHIP,即 Connected Home IP(连接的家居网络协议)。CHIP 这个项目名用了一段时间后,估计他们发现这个名字实在有些费解,因为在计算机领域 CHIP 主要指的是芯片。所以,现在改成 Matter,依然是个名词,但是它表示一种到处存在的东西。

这个 Matter 协议标准的运营组织是 CSA,即 Connectivity Standards Alliance,连接标准联盟。CSA 的前身是 Zigbee 联盟。Zigbee 联盟创立之初是为了建立一个以 Zigbee 通信协议为基础的无线家居自动化设备的物联网标准。随着时间推移,智慧能源、清洁能源、家庭娱乐系统等相关企业也加入到联盟中,所以就不能把通信协议仅限于 Zigbee 了。所以在 2021 年 5 月 11 日宣布,改名为 CSA 1。同时,宣布 CHIP 项目改名为 Matter。

Matter 项目背后的推手有不少重量级成员如 Apple、Google、Amazon、Samsung、 NXP 等智慧家居平台企业和芯片公司。这意味着,未来很有可能符合 Matter 标准的认证设备,都能无缝连接到 Apple HomePod、Google Home、Amazon Alexa 等智能音响。对于智能家居设备厂商来说,只要实现一个标准,就能打通任何智能家居平台。除了能节省研发成本,还能获得更大的市场份额。实在是非常值得期待的。

Matter 的开发目标和原则:

  1. 统一通用:基于经过市场验证的可行技术,建立一个新标准。
  2. 互联互通:在用户授权的情况下,实现任意 Matter 认证设备之间的通讯。
  3. 安全保障:沿用先进主流的信息安全通信措施和协议。
  4. 用户可控:最终用户掌控访问设备的权限。
  5. 整体容错:不会因为某个系统中某个链条环节导致系统故障。
  6. 稳定可靠:标准规定了设备使用过程需要的一整套协议,包括安装部署、运行工作、系统管理等。
  7. 精简高效:协议栈可以裁减运行在资源受限的嵌入式 MCU 上。
  8. 普遍适用:基于 IP,支持低端设备,可以广泛采用。
  9. 灵活部署:协议可以灵活调整,适配不同的工作环境。
  10. 简单易用:简单、高效、集成,容易上手使用。
  11. 开放开源:协议标准开放开源提供,不仅限于成员企业。

我们再看看 Matter 项目的架构设计。Matter 的开发目标是一个简单、统一的应用层连接标准。目的是让开发者能够建立一个可靠、安全的物联网生态系统,确保智慧家居和楼宇设备的互联互通兼容性。协议以 IP 为基础,兼容 Thread 和 WiFi。

Matter 通信层架构如下:

Matter
Matter
TCP
TCP
UDP
UDP
IPv6
IPv6
DSL
DSL
DOCSIS
DOCSIS
Cellular
Cellular
Ethernet
Ethernet
WiFi
WiFi
Thread
Thread
802.15.4
802.15.4
IPv6 for BLE
IPv6 for BLE
BLE
BLE
Text is not SVG - cannot display

Matter 应用层部署在支持 IPv6 的设备和控制器上。Matter 的核心通信采用 WiFi 和 Thread。设备设置过程使用低功耗蓝牙。

Matter 应用架构如下:

Application
Application
Data Model Structure
Data Model Structure
Interaction Model Actions
Interaction Model Actions
Action Framing
Action Framing
Security: Encryption & Signing
Security: Encryption & Signing
Message Framing & Routing
Message Framing & Routing
IP Framing & Transport Management
IP Framing & Transport Management
Text is not SVG - cannot display

Matter 应用层架构分为 7 个模块:

  1. 应用服务层:提供设备的高级业务逻辑服务。比如一个灯光控制开关,可以调节灯的开关、亮度以及颜色。
  2. 数据模型层:通过数据元语描述设备功能。应用服务层通过调用设备描述结构与设备通信。
  3. 操作模型层:提供一组访问设备的操作动作。比如读写设备的某个属性,代表某一类设备操作。操作动作在数据模型层定义。
  4. 动作组帧层:一旦通过操作模型层发起一个动作,就会在这一层组装层二进制格式的数据包传输给设备。
  5. 信息安全层:这一层对数据进行加密、签名。从而保证收发双方数据传输完整保密。
  6. 消息路由层:把加密、签名的数据分帧打包,添加消息头和路由信息。
  7. 网络传输层:通过传输层传输 IP 数据包。