OTA在智能家居发展过程中的作用及挑战
OTA发展的必要性
随着物联网的快速发展,智能家电正以越来越快的速度覆盖我们的生活。而如何运营以及管理这些指数级增长的智能家电,对于生产厂商以及用户而言都是不可避免的问题。
OTA全名over the air,即通过无线下载技术来远程修复智能设备固件中存在的bug以及安全漏洞,也可以实现产品应用的远程升级。
智能家电一般都有着长达数年甚至十数年的使用寿命,而在此期间,不论是对产品智能系统的维护,亦或是产品应用功能的迭代,都可能导致非常频繁的更新。从家电厂商的角度来看,OTA能避免手动更新的复杂性,一方面降低了产品售后维护的成本,其便利性大大延长了智能设备的使用寿命;另一方面通过产品应用的开发,也进一步拓展了家电产品的商业模式,新的个性化应用可以为旧有产品带来新的利润空间。
而从用户的角度来看,OTA同样可以帮助减少频繁复杂的人工操作,同时用户也可以在不额外更换产品的情况下享受到最新的产品应用功能,这都极大地提高了用户的使用体验。
智能家居OTA发展中的挑战
OTA技术最开始的研究主要是为了解决移动领域的问题,在这一方面OTA技术已经十分成熟,而智能家居领域则对OTA技术又提出了一些不同的要求。
首先便是智能家居对成本会有着更严格的控制要求。由于智能家电普遍更加低廉的成本,其内存和处理器的性能往往要远低于移动智能设备,因此我们需要在系统上设计运行更轻量的算法。
其次便是许多智能设备都是通过电池续航,因此运行时的功耗控制也十分重要。而OTA更新时消耗的电量会极大程度地被下载以及写入的数据大小影响,因此减小固件更新包的大小也是OTA发展的重点之一。除此以外,通过固件传输协议来避免冗余的网络信号传输、优化固件代码结构等方法都可以有效减少终端设备的功耗。
有的终端设备会对固件更新重启较为敏感,而这类问题通过引入动态代码更新方案即可在固件运行的过程中完成更新,避免重启带来的影响。
OTA差分升级
目前差分升级是较为主流的OTA更新方案,其设计目的主要是为了减少固件映像的大小,同时保持稳健和高效的的网络传输。
差分升级包括四个最主要的阶段:
•在云端对比新旧固件版本,优化新版本的固件代码来提升两个版本的固件相似度。
•通过差分算法比较两个版本的代码,尽可能获得更小的差分包,也叫delta script。差分包中编码了一系列的指令,当终端下载差分包之后,就可以按照指令重建完整的新版本固件。
•通过特定的网络传输协议来下载更新包。
•在终端重建、验证、安装并运行新版本固件。
参考文献:Arakadakis K, Charalampidis P, Makrogiannakis A, et al. Firmware over-the-air programming techniques for IoT networks-A survey[J]. ACM Computing Surveys (CSUR), 2021, 54(9): 1-36.