一、簡介

Matter(以前稱為 Project Connected Home over IP 或 Project CHIP)是一個 開源應(yīng)用層協(xié)議,向下屏蔽了設(shè)備制造商的生態(tài)和系統(tǒng),旨在創(chuàng)建跨智能家居設(shè)備、移動應(yīng)用程序和云服務(wù)的統(tǒng)一通信標(biāo)準。它支持多種現(xiàn)有技術(shù),包括 以太網(wǎng)、Wi-Fi、Thread 和低功耗藍牙 (BLE),并使用 TCP 和 UDP 等基于 IPv6 的傳輸協(xié)議來確保不同類型網(wǎng)絡(luò)之間的連接。
Matter 由 開源 SDK(https://github.com/project-chip)實現(xiàn),該 SDK 不僅包含規(guī)范的實現(xiàn),還包含一套豐富的示例和互操作代碼。核心 Matter 協(xié)議適用于 OSI 環(huán)境的前三層,這意味著它支持任何類型的 IPv6 傳輸和網(wǎng)絡(luò)運行。雖然通過 IPv6 進行控制和其他操作通信,但可能會采用 Bluetooth 低功耗 (BLE) 來調(diào)試新設(shè)備1。
Matter 既靈活,又可以互操作。它基于低功耗 802.15.4 網(wǎng)絡(luò)以及 Wi-Fi 智能家居設(shè)備的多年挑戰(zhàn)和成功經(jīng)驗。與 Thread 類似,Matter 基于 IPv6 構(gòu)建。它提供強大的加密功能、明確定義的設(shè)備類型及其數(shù)據(jù)建模,以及對多個生態(tài)系統(tǒng)管理員的支持。

Matter還支持其他智能家居技術(shù)的橋接,(例如 Zigbee、Bluetooth Mesh 和 Z-Wave)。這意味著基于這些協(xié)議的設(shè)備可以通過橋接器操作,橋接器是 Matter 網(wǎng)絡(luò)和其他橋接的物聯(lián)網(wǎng)技術(shù)的成員設(shè)備。橋接器有雙重優(yōu)勢。使用其他協(xié)議的設(shè)備可以訪問面向本機 Matter 設(shè)備的技術(shù)和生態(tài)系統(tǒng)。與此同時,Matter 將利用具有大規(guī)模已安裝用戶群體的成熟技術(shù),創(chuàng)建一個真正連接的事物網(wǎng)絡(luò)。
二、Matter協(xié)議架構(gòu)

Matter 應(yīng)用層可以分為幾個主要組件。

在最底層,Matter 協(xié)議棧與傳輸層交互。有效數(shù)據(jù)包在發(fā)送設(shè)備上沿著協(xié)議棧向下流動,在接收設(shè)備上沿著協(xié)議棧向上流動。
2.1 應(yīng)用程序
應(yīng)用程序?qū)佣x給定最終產(chǎn)品的業(yè)務(wù)邏輯。例如,對于照明的應(yīng)用程序可能包含處理打開/關(guān)閉燈泡及其顏色特征的邏輯。對于門鎖應(yīng)用程序,業(yè)務(wù)邏輯可以根據(jù)來自特定虛擬助理技術(shù)的語音命令來打開和關(guān)閉特定模型的門栓。它還可以定義來自特定 PIN 鍵盤 UI 的輸入、門栓模型上特定 LED 的反應(yīng)等。
2.2 數(shù)據(jù)模型
數(shù)據(jù)模型層使用 屬性(Attribute) 、命令(Command) 和 事件(Event) 的概念描述 Matter 節(jié)點支持的遠程操作,并分組為稱為 集群(Cluster) 的邏輯塊。Matter 應(yīng)用集群規(guī)范中包含的集群具有明確定義的范圍和行為,以確保不同供應(yīng)商開發(fā)的 Matter 節(jié)點之間的互操作性。集群可以是抽象的,這意味著它可以作為多種設(shè)備類型的基礎(chǔ),以減少向 Matter 引入新產(chǎn)品類別的時間和成本。

2.3 交互模型
數(shù)據(jù)模型層描述了處理數(shù)據(jù)的抽象,而交互模型定義了如何通過交互在節(jié)點之間交換數(shù)據(jù)。
交互模型層定義了客戶端和服務(wù)器設(shè)備之間可以執(zhí)行哪些交互。發(fā)起交互的節(jié)點稱為發(fā)起者(通常為客戶端設(shè)備Client),作為交互的接收者的節(jié)點稱為目標(biāo)(通常為服務(wù)器設(shè)備Server)。
2.4 動作框架
動作框架層將作為交互一部分的消息從交互模型轉(zhuǎn)換為序列化的二進制數(shù)據(jù)包。
2.5 安全性
安全層從動作框架層獲取編碼幀,對其進行加密并附加消息身份驗證代碼,以確保數(shù)據(jù)受到數(shù)據(jù)包發(fā)送者和接收者的保護和驗證。
2.6 消息成幀和路由
該層負責(zé)將有效負載與必需的和可選的標(biāo)頭字段組合在一起。這些標(biāo)頭字段指定消息的屬性及其邏輯路由信息。
2.7 IP成幀和傳輸管理
該層管理通過 IP 網(wǎng)絡(luò)向?qū)Φ仍O(shè)備傳輸有效負載。它使用傳輸控制協(xié)議 (TCP) 或用戶數(shù)據(jù)報協(xié)議 (UDP) 與 Matter 消息可靠性協(xié)議 (MRP) 的組合。MRP 實現(xiàn)重傳、提供傳送確認并確保拒絕重復(fù)的消息。在調(diào)試過程中,可以使用藍牙 LE 上的藍牙傳輸協(xié)議來代替該層。
三、Matter網(wǎng)絡(luò)拓撲結(jié)構(gòu)
Matter 網(wǎng)絡(luò)拓撲是指 Matter 設(shè)備與 IPv6 網(wǎng)絡(luò)之間的連接結(jié)構(gòu)。不同的 IPv6 網(wǎng)絡(luò)可以通過中央集線器 Hub(例如 Thread 邊界路由器或 Wi-Fi 接入點)相互通信。
Matter 允許通過 Matter 橋與基于其他協(xié)議(例如 Zigbee、Bluetooth Mesh 和 Z-Wave)的外部網(wǎng)絡(luò)連接。
下圖展示了一個通用的 Matter 拓撲示例,其中包含兩個 Thread 邊界路由器設(shè)備,其中一個具有與 Internet 的可選連接,以及圖上部的三個 Wi-Fi 設(shè)備,充當(dāng)其他協(xié)議設(shè)備的 Matter 橋接器。

下圖中體現(xiàn)了 Matter over Wi-Fi、Matter over Thread 以及 Matter 橋接設(shè)備的工作情況。
首先設(shè)備通過藍牙加入到 Matter 網(wǎng)絡(luò),因為 WiFi 本身支持 IP,但是 Thread 網(wǎng)絡(luò)不持支 IP,所以 Matter over Thread 必須通過 Thread 邊界路由器給 Thread 網(wǎng)絡(luò)中的設(shè)備分配IP地址,才能進行通信。非 Matter 協(xié)議的設(shè)備通過特定的 Matter 橋接設(shè)備也能加入到 Matter 網(wǎng)絡(luò)中進行通信。

3.1 單一網(wǎng)絡(luò)拓撲

在單一網(wǎng)絡(luò)拓撲中,所有的 Matter 設(shè)備都連接到一個單一的邏輯網(wǎng)絡(luò)。 它可以是 Thread/802.15.4 網(wǎng)絡(luò)、Wi-Fi 網(wǎng)絡(luò)或以太網(wǎng)網(wǎng)絡(luò)。在 Wi-Fi/以太網(wǎng)的情況下,網(wǎng)絡(luò)實際上可以跨越多個 Wi-Fi 和/或以太網(wǎng)段,前提是所有段都在鏈路層橋接。 節(jié)點(Node)是 Fabric 中的 Matter 設(shè)備的單個實例,可在 IP 網(wǎng)絡(luò)上運行。
在單一網(wǎng)絡(luò)拓撲中的每個節(jié)點都通過單個網(wǎng)絡(luò)接口與 Fabric 中的每個其他節(jié)點進行通信。
在 Matter 中,分屬不同網(wǎng)絡(luò)的設(shè)備可以進行同端通信,這也就意味著一個 Wi-Fi 設(shè)備可以和一個 Thread 進行相互的信息轉(zhuǎn)發(fā),而 Matter 則扮演了一個虛擬網(wǎng)絡(luò)的身份,并稱其為 Fabric。
3.2 星形網(wǎng)絡(luò)拓撲

星形網(wǎng)絡(luò)拓撲由多個外圍網(wǎng)絡(luò)組成,這些網(wǎng)絡(luò)通過 Hub 連接在一起。Hub 通常是客戶家庭網(wǎng)絡(luò)(Wi-Fi/以太網(wǎng))中的設(shè)備,而外圍網(wǎng)絡(luò)可以是任何支持的網(wǎng)絡(luò)類型。外圍網(wǎng)絡(luò)必須始終通過一個或多個邊界路由器(Border Router)直接連接到 Hub。
在架構(gòu)上,任何數(shù)量的外圍網(wǎng)絡(luò)可以存在于單個 Fabric 中,包括相同類型的多個網(wǎng)絡(luò)。節(jié)點可以具有到任何網(wǎng)絡(luò)(Hub 或外圍設(shè)備)的接口,并且可以直接與同一網(wǎng)絡(luò)上的其他節(jié)點通信。然而,任何必須跨越網(wǎng)絡(luò)邊界才能到達目的地的通信必須通過邊界路由器(Border Router)。
該協(xié)議對邊界路由器提出了一系列要求。這些要求涉及地址分配、路由分配和廣播、多播支持和代理發(fā)現(xiàn)。
注:在現(xiàn) Matter1.0 版本規(guī)范中,Thread是主要支持的 LLN(Low-Power and Lossy Network)。在許多情況下,客戶安裝將嘗試維護一簡單的網(wǎng)絡(luò)拓撲,包括一個 Wi-Fi/以太網(wǎng)子網(wǎng)和一個單 Thread 網(wǎng)絡(luò)。但是,可以支持多個 Thread 網(wǎng)絡(luò)。
AP(Access Point): WI-FI無線接入點,AP 負責(zé)向 STA 提供 Wi-Fi 信號,并提供連接互聯(lián)網(wǎng)的網(wǎng)絡(luò)服務(wù)。
STA(Station): STA 是 Wi-Fi 中的無線客戶端,即 Station。STA 可以是智能手機、平板電腦、筆記本電腦等各種設(shè)備,它們可以通過 Wi-Fi 連接到無線接入點,訪問互聯(lián)網(wǎng)或者局域網(wǎng)中的資源。
BR(Border Router): 指的是邊界路由器,BR 是一種網(wǎng)絡(luò)設(shè)備,可以連接兩個或多個 IP 子網(wǎng),并將它們轉(zhuǎn)換為同一個 Thread 網(wǎng)絡(luò),使得不同子網(wǎng)中的設(shè)備可以互相通信。BR 是 Thread 網(wǎng)絡(luò)中的核心設(shè)備之一,通常由路由器或者網(wǎng)關(guān)設(shè)備提供。
ED(End device): 指的是終端設(shè)備,ED 是 Thread 網(wǎng)絡(luò)中的客戶端設(shè)備,如智能手機、平板電腦、筆記本電腦等。ED 可以直接連接到 BR 或者 R,也可以通過其他設(shè)備中繼進行通信。
R(Router): 指的是內(nèi)部路由器。R 是一種網(wǎng)絡(luò)設(shè)備,可以連接多個 ED 和其他 R,負責(zé)在 Thread 網(wǎng)絡(luò)中進行路由選擇和數(shù)據(jù)轉(zhuǎn)發(fā)。
SED(Sleepy End Device): 指的是低功耗終端設(shè)備。SED 是一種特殊的終端設(shè)備,通常采用低功耗的無線技術(shù),可以在不需要進行通信時進入睡眠模式,從而延長電池壽命。SED 可以直接連接到 BR 或者 R,也可以通過其他設(shè)備中繼進行通信。
3.3 Matter網(wǎng)絡(luò)概念
Matter 網(wǎng)絡(luò)使用以下概念:
綁定(Binding): 允許在單個或兩個單獨的 Matter 節(jié)點上的 Matter 端點之間建立關(guān)系的功能。這些關(guān)系通過永久存儲在設(shè)備內(nèi)存中并由綁定集群管理的綁定條目來描述。綁定用于分配節(jié)點上客戶端集群的一個或多個目標(biāo),以便設(shè)備知道應(yīng)該對哪個遠程設(shè)備進行操作。建立綁定引發(fā)的行為是應(yīng)用程序定義的,并且不受 Matter Core 規(guī)范的限制,這為不同的自定義場景開辟了道路。例如,您可以創(chuàng)建一種關(guān)系,在該關(guān)系中按下電燈開關(guān)設(shè)備上的按鈕會導(dǎo)致一個或一組燈泡設(shè)備的狀態(tài)發(fā)生變化。
橋(Bridge): 用于將與 Matter 不兼容的網(wǎng)狀網(wǎng)絡(luò)設(shè)備暴露給 Matter 網(wǎng)絡(luò)的網(wǎng)絡(luò)設(shè)備(例如 Zigbee 設(shè)備)。然后,此類橋接設(shè)備可以與結(jié)構(gòu)中的 Matter 設(shè)備一起工作,并在不同的應(yīng)用層上進行通信。該橋確保 Matter 和非 Matter 設(shè)備之間的連接是安全的。
控制器(Controller): Matter 控制器是 Matter 網(wǎng)絡(luò)中的一個節(jié)點,也是Matter 開發(fā)環(huán)境中的一個角色??刂破髟O(shè)備用于通過網(wǎng)絡(luò)遠程配對和控制 Matter 配件設(shè)備,并使用藍牙? LE 和常規(guī) IPv6 通信與其進行交互。
邊緣路由器(Edge Router): 用于確保 Matter 支持的不同 IPv6 網(wǎng)絡(luò)的互操作性的網(wǎng)絡(luò)設(shè)備。邊緣路由器的主要任務(wù)是協(xié)調(diào)跨網(wǎng)絡(luò)通信。多個邊緣路由器可以在網(wǎng)絡(luò)內(nèi)運行,以確保無單點故障。邊緣路由器的示例包括 Thread 邊界路由器和 Wi-Fi 接入點。
Fabric: 這是一組相互通信且可以屬于不同網(wǎng)絡(luò)的邏輯節(jié)點。結(jié)構(gòu)中的設(shè)備共享相同的信任根和配置狀態(tài),并且可以通過唯一的 64 位結(jié)構(gòu) ID 進行識別。
Multi-fabric: 一項 Matter 功能,允許將 Matter 節(jié)點委托給不同的結(jié)構(gòu)(每個結(jié)構(gòu)都有自己的管理員)并與這些結(jié)構(gòu)內(nèi)的其他設(shè)備進行通信。此功能對于確保多個應(yīng)用程序和生態(tài)系統(tǒng)開箱即用的互操作性至關(guān)重要。它也可以稱為多管理。有關(guān)更多信息,請參閱Matter multiple fabrics feature
節(jié)點(Node): Matter 設(shè)備的單個實例,在使用節(jié)點 ID 和安全憑證進行調(diào)試后可在 IPv6 網(wǎng)絡(luò)上使用。一個節(jié)點可以委托給多個單獨的結(jié)構(gòu),并使用多個結(jié)構(gòu)功能擁有多個管理員,因此具有多個節(jié)點 ID。Matter 中的節(jié)點支持家庭自動化橋接,從而允許實施其他家庭自動化技術(shù)、傳輸和鏈路層。每個節(jié)點都分配了一個唯一的 64 位節(jié)點 ID、一個由 CSA 靜態(tài)分配的 16 位供應(yīng)商 ID (VID)、一個 16 位產(chǎn)品 ID (PID) 和一個 16 位組 ID (GID),其中標(biāo)識結(jié)構(gòu)中的一組節(jié)點。
OTA提供商(OTA Provider): Matter 節(jié)點,可以響應(yīng) OTA 請求者節(jié)點有關(guān)可用軟件更新映像的查詢,并在無線 (OTA) 軟件更新過程中向 OTA 請求者提供更新包。
OTA請求者(OTA Requestor): Matter 節(jié)點,可以向 OTA Provider 節(jié)點請求有關(guān)可用軟件更新映像的信息,并在 OTA 軟件更新過程中從 OTA Provider 節(jié)點接收更新包。OTA 請求者還可以處理有關(guān) Matter 網(wǎng)絡(luò)中可用 OTA 提供商的公告。
? 由 Leung 寫于 2023 年 11 月 8 日
? 參考:Google Home Developers - Matter
nRF Connect SDK - Matter
project-chip
【Matter】Matter學(xué)習(xí)筆記1