Managing a cluster of IoT brokers in support of smart city applications

Publish/subscribe brokers enable the efficient dissemination of events to a large number of subscribers in support of smart city applications. These events convey data gathered from devices and published to named logical channels called topics. Software-Defined Networking (SDN) can provide the advantage of balancing the load between brokers by switching topics between brokers. However, this switching results in network overhead. Besides, supporting data and decision fusion applications is a challenging task since sensory data has to be fused before being forwarded to subscribers. Therefore, we propose an algorithm utilized by the SDN controller to minimize the load difference between brokers while respecting a reconfiguration limit in support of data and decision fusion applications. We formulate minimizing brokers' load difference within a reconfiguration budget with the constraint of indivisible topics as an Integer Linear Programing (ILP) problem. We show that the problem is NP-Hard and propose a heuristic driven by long-term statistics of topics. The proposed heuristic is evaluated with realistic simulation traffic traces and compared against a threshold-based baseline heuristic driven by instantaneous statistics of topics. Results show that the proposed heuristic performs up to 2000% better load distribution than the baseline heuristic and at least 27% less topic switching.