I. Introduction
Fog computing adopts cloud technology to move computation to the edge. It promises to solve the core problem of data explosion in the IoT domain [1]. Instead of performing raw data transfer to the cloud, in fact, data flows generated from objects, i.e., IoT devices, can be intercepted to extract information at the edge of the network. This architectural choice prevents massive, diffused and continuous raw data injection into the communication infrastructure, avoiding severe communication congestion [2]. Furthermore, compared to customary cloud-based IoT deployments, proximity to mobile or sensing devices lowers round-trip-time between target objects and backends of processing applications [3].