空中固件升级(FOTA)
空中固件升级(FOTA)是指通过空中下载的方式对终端设备上的软件进行更新。具体地说,就是终端设备通过无线网络下载最新的软件包,对终端设备软件进行安装、更新、删除等操作,实现终端产品的功能迭代、漏洞修复。
功能介绍
升级包远程管理服务器
升级服务器支持终端产品的版本管理,自动完成各个版本之间的差分包的自动生成,支持多种升级策略定义,如升级时间段、升级范围、升级版本、升级地域、升级渠道等升级策略的组合,满足用户的各类升级需求。
终端升级组件
终端设备可集成 YoC 的 FOTA 服务。该服务可以定期接受远程升级事件,下载新的软件,并启动升级流程。FOTA 服务支持的主要功能如下:
- 支持丰富的物联网协议 (Alink,MQTT ,COAP)
- 支持HTTP / HTTPS / COAP / AT 固件下载
- 支持全量和差分升级
- 支持多分区的升级
- 支持断点续传
- 完整性校验
- 数字签名,保证数据安全不被篡改
- 支持断电保护
- 自研差分算法,大大降低升级包资源大小,减少升级时的流量消耗,降低升级功耗
支持多种升级方案,满足不应用的需求
FOTA 服务支持多种升级方案,开发者可以根据终端产品的特点,选择最新的升级方案:
- 差分升级:当产品升级变更较小时,内容有较大的延续性,采用差分算法,记录出前后两个版本的差异,即可大幅减少升级包的大小。生产非常小的升级包。差分升级通常应用于带宽受限、功耗要求高、存储空间受限的物联网产品。
- 全量升级:即用新版本固件直接替换老固件的一种升级方式。需要占用较大的硬件存储资源和消耗更多的数据传输带宽,但是更新的速度会比较快。
- A/B升级:A/B 升级是在终端设备上保留两套工作系统(程序两份,数据只有一份),可以理解为系统分区与备份分区。使用A/B升级时,可交替对A/B 两套系统进行升级,系统启动时,可以引导进入最新的分区,升级失败后,也可以回退到旧版本,降低系统变砖的可能。