Incremental firmware update using an efficient differencing algorithm

Konstantinos Arakadakis, Alexandros G. Fragkiadakis · 2020

Modern IoT solutions require minimisation of the transmitted data during a firmware update, in order to save energy for the constrained devices. To accommodate this requirement, IoT nodes can be updated incrementally using only parts of the current firmware, which is already stored in their flash memory in order to reconstruct the new firmware locally. This the role of the so-called differencing algorithm that executes in a firmware server and aims to detect common segments between the current and the new firmware, producing an encoded small delta script, which is finally transmitted to the IoT nodes. In this work, we present a differencing algorithm that operates in byte-level and can compute optimal, in terms of size, delta scripts in O(nlogn) time and O(n) space complexity.

Read the paper · More papers on PaperTik