OTA更新在物聯網設備管理中的作用
根據IDC的一份最新報告,到2025年,將有416億臺物聯網設備,產生79.4 zetb的數據。連接的設備相互通信,傳輸數據集,并在單個生態系統中工作。為了有效地做到這一點,還需要定期更新,就像筆記本電腦和手機一樣。
但是,為智能設備提供語音的嵌入式系統的更新并不局限于用新的副本覆蓋文件。這是一個復雜的端到端機制,必須保持一致和無縫:用戶不希望直接參與打補丁、修復和增強設備的過程。
無線(OTA)更新可以實現高效的遠程操作。但是有一系列新的挑戰需要考慮。
什么是OTA更新?
正如Gartner所述,OTA指的是通過移動或蜂窩網絡下載應用程序、服務和配置的能力。其發生在“空中”,即無需將給定設備連接到另一個設備來安裝更新。
在嵌入式開發中,OTA機制意味著通過Wi-Fi、移動寬帶和設備操作系統中的內置功能,定期更新與互聯網相連的硬件,包括新的設置、軟件和/或固件。
OTA機制在物聯網應用開發中發揮著不可或缺的作用,包括:
- 固件無線(FOTA)更新。該技術被用于硬件部件,如汽車工業中ADAS系統的電子控制單元(ecu)。例如,特斯拉通過FOTA更新,在其汽車上使用了新的補丁和功能,比如先進的自動駕駛儀。
- 軟件無線(SOTA)更新。這些包括安全補丁、軟件更新和新的功能實現:更新智能汽車的導航地圖和信息娛樂屏幕、聯網家庭的智能計量和智能供暖等。
物聯網中OTA更新的好處
- 提高安全性和合規性。OTA機制允許開發者通過網絡修補已知的漏洞,而不是召回設備。此外,還確保更快、更經濟有效地遵守不斷演變的法律和監管責任。
- 維護成本降低。當在現場部署大量設備時,無法確保定期手動更新。OTA系統可以通過單一統一界面實現無縫更新,以替代成本高、耗時長的現場服務。
- 持續改進。OTA更新允許制造商不斷修改其連接的系統,修復錯誤并提高產品性能,即使它們在生產線上或在消費者手中。這種方法消除了召回和親自維護,并提供了競爭優勢。通過這種方式,無需等待在新一批設備中加入新功能。
- 額外的收入來源。原始設備制造商(oem)可以在發布后通過OTA更新實現附加組件,而無需物理訪問需要升級的固件。
- 降低運營成本。根據Stout Risius Ross的報告,軟件問題占全行業召回的15%。OTA技術簡化了軟件升級和修復,據IHS Automotive預測,該技術能夠為企業節省超過350億美元的運營成本。
OTA機制目前面臨的挑戰
都說OTA更新改善了連接設備,那為什么還是經常聽到關于設備無法運行、人們因智能鎖故障而被困在公寓里、以及汽車警報器被劫持的恐怖故事?
- 情境意識。對于某些設備,如聯網汽車或用于醫療手段的設備,任何修改都會帶來一定程度的風險。當系統在設備執行關鍵任務時,發送更新時就會發生這種情況。
- 不能回滾到早期版本。與失敗的OTA機制相關的最著名的丑聞之一發生在2017年。Airbnb將損壞的軟件更新部署到不正確的設備——該設備是該企業出租物業使用的智能鎖的早期版本。設備無法運行,無法接收另一個OTA更新來解決這個問題。該系統的功能不包括自動回退功能,這使得租客無法進入公寓。由于這次事故,必須由供應商手動更新鎖。
- 安全問題。OTA系統中的潛在漏洞非常多:中間人(MITM)攻擊、惡意軟件的引入和其他弱點。這是由于關鍵數據的傳輸通道不受保護、缺少數字簽名或代碼簽名、缺少更新身份驗證等等。因此,黑客可以修改有效的更新,注入惡意代碼,接管設備,并對嵌入式系統的敏感組件重新編程。
- 可擴展性。隨著連接設備數量的不斷增加,OTA系統必須能夠適應不斷增長的需求,并為成百上千甚至數百萬的設備提供信息。開發人員應允許管理員安排對其設備的更新,以避免網絡飽和和限制意外停機。另一個挑戰是確保內置支持自動更新的配置選項,以適應帶寬限制。
如何實現OTA技術:3個策略
選擇的實施策略應與相關物聯網設備的性質、系統架構和可用的技術選擇保持一致。
產品所有者可以在從零開始構建自定義OTA系統,和從供應商那里購買現成的OTA解決方案之間做出選擇。
前一種方法提供了對遠程更新的更多自由和控制,而后一種方法加快了上市時間,是一種更具成本效益的解決方案。
如果產品負責人選擇自定義OTA解決方案,則可以通過3個主要框架來實現該項目:
- 邊緣到云端OTA更新。具有內置微控制器的連接設備接收來自遠程服務器的OTA包。該軟件包可以包括對微控制器底層硬件功能(FOTA)的升級,以及對運行在其上的應用程序(SOTA)的更新。
- 網關到云OTA更新。一種具有與互聯網連接的網關(例如,遠程信息處理系統)的系統,其管理一組本地設備,并從基于云的遠程服務器接收更新。更新包括已安裝的軟件應用程序、應用程序的主機環境和網關設備的固件的更新版本。
- 邊緣到網關到云端OTA更新。連接互聯網的網關充當調度程序,從基于云的服務器下載更新,然后分發到另一個邊緣/網關。
- 從一開始就關注OTA機制。產品所有者和開發團隊往往會忽視OTA更新功能的開發、測試和有效實現。因此,OTA機制被倉促地組裝起來,缺乏許多基本需求。在最壞的情況下,原始設備制造商避免額外的硬件成本,并完全不將機制納入物聯網開發生命周期。
- 檢查開發人員在構建安全可靠的OTA機制方面的能力。供應商的物聯網專業知識并不能保證有能力推出全機制的更新。在物聯網系統方面有突出技能的開發人員可能沒有任何建立故障安全更新系統的經驗。
- 采用漸進式部署方法。管理員應該可以自由安排設備的更新,以避免網絡擁塞、壓力過大和拒絕服務(DoS)問題。漸進式部署方法將確保IoT設備在大規模批量推出之前進行更新。
在安排特定更新時考慮使用的關鍵性問題。例如,當駕駛聯網汽車或使用醫療設備時,不應該進行更新。
- 確保帶有內置回滾的原子更新。由斷電或網絡問題引起的錯誤更新可能會使設備癱瘓,并且需要完全恢復。但是,如果其以原子方式完成,即回滾到上一個功能版本,意外事件就不會導致設備變磚。此外,將基本的物聯網屬性,如主機名、網絡配置和關鍵特性配置,存儲在一個特定的文件中是值得的,任何版本的更新都可以讀取該文件。
- 將備份服務集成到當前工作配置中。如果在更新過程中出現問題,物聯網設備將重新加載最新的已知且可信配置,該配置存儲在私有或公共云平臺托管的上游存儲庫中。該特性得到了主要云提供商的支持:Amazon Web Services(AWS)IoT服務支持Thing Shadows,而Microsoft Azure IoT Hub支持設備孿生。
- 構建管理服務器。管理服務器將存儲清單列表并跟蹤正在運行的軟件和固件版本。基本的物聯網屬性,例如主機名、網絡配置和特性配置,應該存儲在可以被任何版本的固件讀取的特定文件中。 安全。與空中傳輸數據的安全性有關的3個主要挑戰包括:
⑴ 身份驗證:數據必須從受信任的服務器發送到客戶端
⑵ 保 密性:必須將傳輸中數據的訪問權限授予預定數量的用戶
⑶ 完整性:傳輸的更新不應該被破壞。
一種安全技術是數據源身份驗證(DOA)。使用DOA,每次更新都由供應商進行數字簽名,并且在開始更新之前必須由IoT設備驗證數字簽名。
總結
隨著OTA的更新,沒有一個萬能的解決方案,因為每個物聯網系統都有自己的一套要求和約束。一個有經驗的團隊會優化OTA系統,以解決這些問題,并提供有效的OTA解決方案。