云端一体化差分升级,AliOS Things物联网升级“利器”

1.1 OTA升级简介
随着物联网的日益发展,OTA升级逐渐成为物联网设备的刚性需求,目前物联网设备种类繁多,但并未提供统一的OTA升级方案,针对日益发展的物联网设备,开发者迫切需要一套云端一体化的OTA升级方案来满足快速迭代的产品开发周期,降低产品开发和部署的成本,同时针对物联网低功耗和省流量的场景,AliOS Things推出物联网设备的升级“利器”:云端一体化的差分升级,可以快速修复软件漏洞,更新系统,解决了用户开发部署难,售后维护成本高,升级下载流量大,升级不安全的痛点问题。
1.2 OTA升级软件架构

AliOS Things OTA采用云端一体化软件架构如图所示,用户接口包括升级服务管理等界面设计在云端服务器上,通过设备端与云前端相互配合,为用户提供丰富特性的升级服务。

archtect

1.2 丰富的功能特性
AliOS  Things云端一体化的OTA升级服务,不仅可以为用户提供更加安全可靠的基础升级服务,如乒乓双备份分区升级,安全的下载通道,固件完整性校验,断点续传,断电保护; 也可以为用户提供丰富的高级升级服务,如差分增量升级,数字签名验证安全升级。
1、可回滚的乒乓双备份升级
提供云端一体化的基本升级服务,如下图所示,使用乒乓双备份升级方式,同时配合bootloader支持升级失败后可以回滚老的固件,使整个升级过程更加安全可靠。

bupgrade

2、差分增量升级,节省流量
使用优化后的高效压缩算法,在最小内存使用的情况下可以达到最大压缩率,可以稳定运行在内存资源很小的平台,如乐鑫8266芯片,对bin文件平均压缩率在5%左右,在版本代码更改较小的情况下,对1M大小原始压缩后的bin文件,经过我们的差分算法压缩后增量包大小只有4332字节,几乎可以忽略不计, 可以最大限度的节省升级流量。

diff

3、安全数字签名验证(RSA)
与阿里云安全服务器直接对接,在云端完成数据签名下发公钥,设备端完成固件签名验证,整个流程云端一体化提供服务,集成开发及操作非常简单。
       

secure

1.4 轻松上手AliOS Things升级服务

1、按照1.1章节AliOS Things wiki文档安装好集成编译工具,并下载好源码
      AliOS Things OTA云到端使用文档链接: https://github.com/alibaba/AliOS-Things/wiki/OTA-Tutorial
2、在编译AliOS Things OTA Linux host  Demo程序
     aos make clean;
     aos make otaapp@linuxhost
3、Linuxhost下运行OTA Demo程序,确保PC正常联网并获取到IP地址
    ./[email protected]

1otaapp

4、从云端创建产品,获取产品信息pk,dn,ds, ps,执行命令行运行
    OTA_APP "a16UKrlKekO" "gateway_test01" "AT2XFOPOIbJaKfXsKeaEhabJ8TLhMQYp" "RDluqbn3LQazrdqM"

2otaapp

如上图打印显示对应的ota设备pk,dn注册OTA服务成功(注意确保设备信息PK,DN等正确):

5、通过云端界面选择验证固件,点击确认后可以看到设备端OTA升级开始:

3otaapp

升级完成,在Linux host下会将文件写入到当前目录的文件名字为[email protected]文件中。

4otaapp

猜你喜欢

转载自yq.aliyun.com/articles/646263