雲端一體化差分升級,AliOS Things物聯網升級“利器”
1.1 OTA升級簡介
隨著物聯網的日益發展,OTA升級逐漸成為物聯網設備的剛性需求,目前物聯網設備種類繁多,但並未提供統一的OTA升級方案,針對日益發展的物聯網設備,開發者迫切需要一套雲端一體化的OTA升級方案來滿足快速叠代的產品開發周期,降低產品開發和部署的成本,同時針對物聯網低功耗和省流量的場景,AliOS Things推出物聯網設備的升級“利器”:雲端一體化的差分升級,可以快速修復軟件漏洞,更新系統,解決了用戶開發部署難,售後維護成本高,升級下載流量大,升級不安全的痛點問題。
AliOS Things OTA采用雲端一體化軟件架構如圖所示,用戶接口包括升級服務管理等界面設計在雲端服務器上,通過設備端與雲前端相互配合,為用戶提供豐富特性的升級服務。
1.2 豐富的功能特性
AliOS Things雲端一體化的OTA升級服務,不僅可以為用戶提供更加安全可靠的基礎升級服務,如乒乓雙備份分區升級,安全的下載通道,固件完整性校驗,斷點續傳,斷電保護; 也可以為用戶提供豐富的高級升級服務,如差分增量升級,數字簽名驗證安全升級。
1、可回滾的乒乓雙備份升級
提供雲端一體化的基本升級服務,如下圖所示,使用乒乓雙備份升級方式,同時配合bootloader支持升級失敗後可以回滾老的固件,使整個升級過程更加安全可靠。
2、差分增量升級,節省流量
使用優化後的高效壓縮算法,在最小內存使用的情況下可以達到最大壓縮率,可以穩定運行在內存資源很小的平臺,如樂鑫8266芯片,對bin文件平均壓縮率在5%左右,在版本代碼更改較小的情況下,對1M大小原始壓縮後的bin文件,經過我們的差分算法壓縮後增量包大小只有4332字節,幾乎可以忽略不計, 可以最大限度的節省升級流量。
3、安全數字簽名驗證(RSA)
與阿裏雲安全服務器直接對接,在雲端完成數據簽名下發公鑰,設備端完成固件簽名驗證,整個流程雲端一體化提供服務,集成開發及操作非常簡單。
1.4 輕松上手AliOS Things升級服務
1、按照1.1章節AliOS Things wiki文檔安裝好集成編譯工具,並下載好源碼
2、在編譯AliOS Things OTA Linux host Demo程序
aos make clean;
aos make otaapp@linuxhost
3、Linuxhost下運行OTA Demo程序,確保PC正常聯網並獲取到IP地址
./[email protected]
4、從雲端創建產品,獲取產品信息pk,dn,ds, ps,執行命令行運行
OTA_APP "a16UKrlKekO" "gateway_test01" "AT2XFOPOIbJaKfXsKeaEhabJ8TLhMQYp" "RDluqbn3LQazrdqM"
如上圖打印顯示對應的ota設備pk,dn註冊OTA服務成功(註意確保設備信息PK,DN等正確):
5、通過雲端界面選擇驗證固件,點擊確認後可以看到設備端OTA升級開始:
升級完成,在Linux host下會將文件寫入到當前目錄的文件名字為[email protected]文件中。
原文鏈接
本文為雲棲社區原創內容,未經允許不得轉載。
雲端一體化差分升級,AliOS Things物聯網升級“利器”