本文参考芯科公司对matter的介绍。网址 https://www.bilibili.com/video/BV1NL411T7Kj
一.matter协议简介
matter是一个通用的应用层规范。matter目前有两个分支,matter over Thread和matter over Wi-Fi。其中Thread是专门为物联网设计的一种短距离、低功耗、支持IPv6的无线网状网络组网协议,是Zigbee的升级。以实现设备间的互操作性架构目标,Matter规范设备和控制器(基于 IPv6的网络(Thread或Wi-Fi))的应用层。
应用层可以进一步细分为七个主要组件:
- 应用:设备的高阶业务逻辑。例如,专注于照明的应用程序可能包含处理打开/关闭灯泡及其颜色特征的逻辑。
- 数据模型:帮助描述设备各种功能的数据原语。当有意与设备交互时,应用程序对这些数据结构进行操作。
- 交互模型:表示可以在设备上执行以与其交互的一组操作。例如,在设备上读取或写入属性将对应于与设备的交互。这些操作对数据模型定义的结构进行操作。
- 动作框架:一旦使用交互模型构建了一个动作,它就会被构造成一个规范的打包二进制格式,以便在“线路”上得到很好的表示。
- 安全性:然后将编码的动作帧发送到安全层以对有效负载进行加密和签名,以确保数据包的发送方和接收方都对数据进行保护和验证。
- 消息帧和路由:通过加密和签名的交互,消息层构建具有必需和可选头字段的有效负载格式;它指定消息的属性以及一些路由信息。
- IP 成帧和传输管理:构建最终有效载荷后,将其发送到底层传输协议以进行数据的 IP 管理。
二.matter涉及的两个概念
Fabric ID 64bit node ID 64bit
1.Fabric
A collection of Matter devices sharing a trusted root.互信的设备集合,构成应用生态。
A fabric is identified by a fabric ID which is a 64-bit number. 64bit 的ID
2.Node
In a Matter fabric,each physical device is called a node.
Each node is identified by a node ID which is a 64-bit number.
三.Matter通过多个Fabric的生态进行管理
一个Matter设备可加入多个Fabric生态,由多个生态进行管理。利用设备可属于多Fabric,不同系统是不同的Fabric,控制同一设备可以在不同系统中使用。每个Fabric相当于一个虚拟专网。
四.应用系统控制功能的实现
设备之间的对应关系通过绑定表(cluster)来实现。
绑定表(cluster)是一组描述绑定关系的列表,
绑定目标包括:Fabric ID 、节点 ID、端点ID、Cluster簇ID、
绑定目标可以是单个端点ID的对应关系,一个节点组ID
1.访问控制Cluster
2.描述符Cluster(设备的能力)
3.标签Cluster(添加标签)
4.绑定Cluster(绑定对象可以是endpoint 也可以是group)
5.绑定目标:fabric、node或group、endpoint、Cluster
6.代理(Proxy减轻设备绑定表的存储空间)
7.桥(非matter设备需要接入matter网络时需要)
8.OTA(更新固件)
五.配网接入过程
配网接入:自动、配置接入(进入方式:标准、用户干预模式)
待入网设备(带二维码),配网工具进入配网软件(扫二维码),建立连接,通过PASE建立安全连接;
认证,将管理员根用户列表ACL;配置网络(分配wifi——ssid与密钥、thread——PANid与密钥);加入网络,CASE协商密钥;完成入网。
配网接入的交互过程:
六.数据模型
三类endpoint描述Matter Node。
三类endpoint:根节点endpoint、组合endpoint、叶子endpoint
七. 交互模型
发起方与响应方的交互,采用C/S方式。
Path (action的操作对象)
Action(请求或响应)
Transcaction:一序列action
Interaction :一序列transcation
八. 安全访问
1.访问控制Cluster
访问控制列表(ACL)
安全特性:
保密性:消息有效负载由加密密钥加密
隐私:地址由隐私密钥加密
2.设备认证(设备合法性)
每个设备都有一个由制造商签署的唯一证书。证书的层次结构为三层,所有设备不是单一根CA。在调试期间,需要检查设备私钥的合法性。可以根据分布式认证数据库(DCL)来验证设备认证状态
3.DCL( Distributed Compliance Ledger)
DCL是分布式认证产品的数据库,包括:认证状态、产品名称描述固件URL、产品证书。DCL服务器提供DCL服务。
从DCL读取是公开的,对DCL的写入受到限制。
对DCL数据的写入角色包括:CSA认证角色、试验室角色、供应商角色。
仅用于记录学习,若有侵权即删除。