區域網路 (HAN) 上的每個節點、負責配對或控制節點的行動裝置,以及讓節點和行動裝置保持同步的服務各自位於單一網路中。在 Weave 系統中,這些元素 (節點、裝置、服務) 稱為「資源」
。Weave 可針對每項資源提供資料資料來源,以及在這兩項資源之間安全地進行通訊的方法。
Weave 有四個主要元件先逐一瞭解這些模型,再探索彼此的互動方式,並分層在系統中,是很有用的。
結構定義
結構定義
是 Weave 平台的資料模型。結構定義定義三個元素:
- 草稿 基本能力單位,例如屬性狀態、狀態通知或變更狀態的要求
- 介面 一組代表特定函式的特徵,例如構成死結鎖定的屬性和事件
- 資源 由特性和介面構成的邏輯或物理元素,例如 Nest 裝置、結構或使用者。
將結構定義想成是一種分散在多個資源的資料庫,其中「主」的複本 (事實數據) 並非完全存放在單一資源中,而是會按不同特徵分配資源。而特徵的主資源是該特性的發布商,而其他資源則代表該特性的訂閱者。
例如,您可能有一個簡單的結構定義,包含三個資源之間共用的兩個特性。資源 1 可能是 Trait A 的發布商,而 Resource 3 可以是 Trait B 的發布商。其他資源則是這些特性的訂閱者:
此外,視系統需求而定,您也可以針對多個特性將同一個資源當做發布商的發布商使用。
服務
Weave 中的 service 通常稱為資源,從結構定義的角度來看,它可能顯示為多項資源。換句話說,就是 Weave 系統中的所有其他資源
例如,感應器可能只需要發布並訂閱與其功能相關的特徵,其中一些屬性可能與其他資源 (例如中樞或節點) 共用。這些資源可能具有感應器未訂閱的其他特性。但是,服務可能會訂閱或發布這些特性。
個人資料
編織功能分成稱為「設定檔」OpenWeave 有近二十個設定檔。
的邏輯結構。每個設定檔對應一組特定的 Weave 功能,其中包含通訊協定、訊息類型和錯誤代碼等元素。例如,Data Management
設定檔會以發布訂閱訊息模式處理即時特徵管理。它可能會根據其他資源的輸入資料,更新住家資源中的入座特性,將狀態從「在家」變更為「外出」,因為你的行動裝置偵測到你不在家中。另一個個人資料為「Echo」
。這個設定檔類似網路連線偵測 (ping),用來測試網路連線、延遲時間、安全性和有效性。但是另一個設定檔是 Network Provisioning
。這個設定檔包含用來掃描無線網路,並設定憑證以在該網路佈建資源的功能。訊息
如要執行設定檔的功能,HAN 中的資源必須能夠彼此傳送訊息。Weave 具有訊息層
,可處理系統資源之間的所有訊息。訊息分為兩種類型:
- 一般訊息 概略介紹一般的 Weave 內容
- 通道訊息 封裝 IP 封包
每個設定檔各有專屬的訊息類型,用於傳達其功能。舉例來說,資料管理設定檔可能會傳送更新要求一般訊息來變更特性,Echo 個人資料可能會傳送 Echo Request 一般訊息至資源,以傳送 Echo Response 訊息做為回應。
布料
如要在資源之間傳遞所有訊息,則必須佈建 Weave Fabric
。織布是一系列支援 Weave 的資源,可與其他資源與服務搭配使用。不管基礎連線或網路類型為何,組合中的所有資源都會使用 Weave 的常見語言。系統會為每個架構中的節點指派額外的 IPv6 位址,以便安全使用 Weave 應用程式。
Weave 使用基礎傳輸技術 (例如 Wi-Fi 或 Thread),在布料 IPv6 位址之間傳送訊息。
重點回顧
您學到的內容:
- 在 Weave 系統中,節點、裝置和服務稱為資源
- Weave 為 Weave 系統中的每個資源提供資料真相及安全通訊
- Weave 有四大要素:
- 結構定義 資料和 API 模型
- 設定檔 會管理一系列功能的應用程式通訊協定
- 通訊「 」會處理資源之間的所有訊息
- Fabric 一系列支援 Weave 的資源