裝置基礎結構和連線能力

本概觀介紹一般 Azure IoT 解決方案中裝置如何連線到雲端的重要概念。 本文也會介紹選擇性基礎結構元素,例如閘道和網橋。 每個區段都包含提供進一步詳細數據和指引的內容連結。

IoT Central 應用程式會在內部使用 IoT 中樞 和裝置布建服務 (DPS) 服務。 因此,本文中的概念適用於您是否使用IoT Central來探索IoT案例,或使用IoT 中樞和 DPS 建置您的解決方案。

下圖顯示一般 IoT 解決方案中元件的高階檢視。 本文著重於裝置與IoT雲端服務之間的連線,包括閘道和網橋,如下圖所示。

圖表顯示高階 IoT 方案架構,醒目提示裝置連線的區域。

Primitives

Azure IoT 裝置會使用下列基本類型來與雲端服務交換數據。 裝置使用:

  • 裝置到雲端訊息,將時間序列遙測資料傳送至雲端。 例如,從連接到裝置的感測器收集的溫度數據。
  • 裝置對應項可與雲端共用和同步處理狀態資料。 例如,裝置可以使用裝置對應項向雲端報告其控制的閥目前的狀態,以及從雲端接收所需的目標溫度。
  • 數位對應項代表數位世界中的裝置。 例如,數位對應項可以代表裝置的實體位置、功能,以及與其他裝置的關聯性。
  • 媒體檔案的檔案上傳,例如擷取的影像和視訊。 間歇性連線的裝置可以傳送遙測資料批次。 裝置可以壓縮上傳以節省頻寬。
  • 從雲端接收命令的直接方法。 直接方法可以有參數並傳回回應。 例如,雲端可以呼叫直接方法來要求裝置重新啟動。
  • 雲端到裝置 訊息會從雲端接收單向通知。 例如,更新已準備好下載的通知。

若要深入瞭解,請參閱 裝置到雲端通訊指引雲端到裝置通訊指引

面向裝置的雲端端點

Azure IoT 中樞會公開個別裝置端點的集合,讓裝置與雲端交換數據。 這些端點包括:

  • 傳送裝置到雲端訊息。 裝置會使用這個端點來傳送裝置到雲端的訊息。
  • 擷取和更新裝置對應項屬性。 裝置會使用此端點來存取其裝置對應項屬性。
  • 接收直接方法要求。 裝置會使用此端點來接聽直接方法要求。

每個 IoT 中樞都有您用來將裝置連線到中樞的唯一主機名。 主機名稱的格式 iothubname.azure-devices.net為 。 如果您使用其中一個裝置 SDK,就不需要知道個別端點的完整名稱,因為 SDK 提供較高層級的抽象概念。 不過,裝置確實需要知道其所連線之 IoT 中樞的主機名。

裝置可以建立與IoT中樞的安全連線:

  • 直接建立,在此情況下,您必須提供給裝置包含主機名稱的連接字串。
  • 間接使用 DPS,在此情況下,裝置會連線到已知的 DPS 端點,以擷取其指派給 IoT 中樞的 連接字串。

使用 IoT 中樞裝置佈建服務 (DPS) 的優點是,您不需要使用 IoT 中樞專屬的連接字串來設定所有裝置。 相反地,您可以將裝置設定為連線到已知且常見的 DPS 端點,在其中探索其連線詳細資料。 若要深入瞭解,請參閱 裝置布建服務

若要深入瞭解如何實作對端點的自動重新連線,請參閱 管理裝置重新連線以建立復原的應用程式

裝置 連接字串

裝置 連接字串 為裝置提供安全連線到IoT中樞所需的資訊。 連接字串 包含下列資訊:

  • IoT 中樞的主機名。
  • 向IoT中樞註冊的裝置標識碼。
  • 裝置必須建立與IoT中樞的安全連線的安全性資訊。

驗證

Azure IoT 裝置會使用 TLS 來驗證其所連線 IoT 中樞或 DPS 端點的真實性。 裝置 SDK 包含 DigiCert Global Root G2 TLS 憑證,他們目前需要建立與 IoT 中樞的安全連線。 若要深入瞭解,請參閱 IoT 中樞 中的傳輸層安全性 (TLS) 支援,以及 Azure IoT 中樞 裝置布建服務 (DPS) 中的 TLS 支援。

Azure IoT 裝置可以使用共用存取簽章 (SAS) 權杖或 X.509 憑證向 IoT 中樞驗證自己。 建議在生產環境中使用 X.509 憑證。 若要深入瞭解裝置驗證,請參閱:

裝置與IoT中樞之間交換的所有數據都會加密。

若要深入瞭解IoT解決方案的安全性,請參閱 IoT解決方案的安全性架構。

通訊協定

IoT 裝置連線到 IoT 中樞 或 DPS 端點時,可以使用下列其中一個網路通訊協定:

注意

IoT 中樞 對 MQTT 的功能支援有限。 如果您的解決方案需要 MQTT v3.1.1 或 v5 支援,建議您在 Azure 事件方格 中支援 MQTT。 如需詳細資訊,請參閱比較 IoT 中樞 和事件方格中的 MQTT 支援。

若要深入瞭解如何為您的裝置選擇通訊協定以連線到雲端,請參閱:

產業 IoT 案例通常會使用開放式平台通訊統一架構 (OPC UA) 業界標準開放介面。 若要啟用與 Azure 雲端的連線,請使用 Azure IoT 作業。 若要深入瞭解,請參閱 什麼是 Azure IoT 作業?

連線模式

IoT 裝置用來連線到雲端的連線模式有兩種廣泛的類別:

持續性連線

當您的解決方案需具備命令和控制功能時,需要持續連線。 在命令和控制情節中,IoT Central 應用程式會將命令傳送至裝置,以近乎即時的方式控制裝置行為。 持續連線會維護與雲端的網路連線,並在發生中斷時重新連線。 為使裝置持續連線至 IoT 中樞,請使用 MQTT 或是 AMQP。 IoT 裝置 SDK 可讓 MQTT 及 AMQP 通訊協定建立與 IoT 中樞之間的持續連線。

暫時連線

暫時性連線是裝置為了將遙測資料傳送至您 IoT 中樞應用程式所建立的短暫連線。 裝置傳送遙測資料之後,它會卸除連線。 當裝置有更多要傳送的遙測資料時,它就會重新連線。 暫時連線不適用於命令和控制案例。 如果裝置用戶端只需要傳送遙測資料,則裝置用戶端就可以使用 HTTP API。

現場閘道

現場閘道 (有時稱為邊緣閘道) 通常會部署於內部且靠近您的 IoT 裝置。 現場閘道會代表您的 IoT 裝置處理與雲端的通訊。 現場閘道可以:

  • 進行通訊協定翻譯。 例如,啟用藍牙的裝置以連線到雲端。
  • 管理離線和中斷連線的案例。 例如,無法連線到雲端端點時緩衝遙測。
  • 先篩選、壓縮或匯總遙測,再將其傳送至雲端。
  • 在邊緣執行邏輯,以代表雲端中的裝置移除與執行邏輯相關聯的延遲。 例如,偵測溫度尖峰並開啟閥以作為回應。

您可以使用 Azure IoT Edge 將現場閘道部署至內部部署環境。 IoT Edge 提供一組功能,可讓您大規模部署和管理現場閘道。 IoT Edge 也提供一組模組,可讓您用來實作常見的閘道案例。 若要深入瞭解,請參閱 什麼是 Azure IoT Edge?

IoT Edge 裝置可以維護與 IoT 中樞的持續 連線 。 閘道會將裝置遙測轉送至 IoT 中樞。 此選項會啟用連線到IoT Edge裝置的下游裝置的命令和控制。

橋接器

裝置網橋可讓連線到非 Microsoft 雲端的裝置連線到 IoT 解決方案。 非 Microsoft 雲端的範例包括 Sigfox粒子裝置雲端物聯網

開放原始碼 IoT Central Device Bridge 可作為轉送遙測至 IoT Central 應用程式的翻譯工具。 若要深入瞭解,請參閱 Azure IoT Central 裝置網橋。 有非 Microsoft 網橋解決方案,例如 Tartabit IoT 網橋,可用來將裝置連線到 IoT 中樞。

下一步

既然您已瞭解 Azure IoT 解決方案中的裝置連線概觀,一些建議的後續步驟包括: