chines or containers. Simultaneously, Software
Define Networking (SDN) and Network Func-
tion Virtualization (NFV) create an environment
for endless network topologies. Therefore, the
meshes’ redundancy capabilities are quite man-
ageable.
Spohn (Spohn, 2020) proposed the first self-
organizing solution for the federation of autonomous
P/S brokers, providing the primary mechanisms for
bringing the brokers together and allowing the proper
routing of published topics to their intended targets
regardless of the subscribers’ brokers. Brokers are as-
sumed to be connected through an overlay/virtual net-
work, allowing any possibility in the network topol-
ogy. Brokers ignite the federation process with sub-
scribers by building meshes connecting all the brokers
with subscribers for the same topic. The solution al-
lows setting the mesh degree redundancy, resulting in
a mesh as complex as the underlying network topol-
ogy allows. As a result, mesh member brokers might
be connected through redundant paths, creating the
conditions for an enhanced degree of fault tolerance,
besides the intrinsic load balance possibilities arisen
from having several available brokers.
Nevertheless, no real implementation of the pro-
posed solution is available yet, but the author assumes
a protocol realization requires changes to standard
brokers’ inner implementation. Under other condi-
tions, one could investigate the possibility of realiz-
ing the federation at the application layer based on
the P/S mechanism itself, without requiring any bro-
kers’ changes. In this context, the federator would
play more of a supporting role in the whole process.
This work endeavors to provide the first proposal
to implement MQTT brokers’ federation at an appli-
cation level/layer. The remainder of this paper has
the following structure. Section 2 presents some rep-
resentative related work. Section 3 summarizes the
federation of MQTT brokers used as the basis for this
work. Section 4 introduces the proposed endogenous
(i.e., P/S based) federation architecture, while Sec-
tion 5 shows some of its formal properties. In Sec-
tion 6, a case study is presented as a first realization of
the proposed architecture, while Section 7 addresses
an initial evaluation scenario. Conclusions and future
works are in Section 8.
2 RELATED WORK
Clustering servers usually address scalability in
MQTT broker deployment; however, most solutions
are proprietary. HiveMQ™ (HiveMQ, 2020) defines
an MQTT broker cluster as a distributed system act-
ing as a single logical MQTT broker, allowing clients
to interact with the system no matter how many real
brokers are active. SwiftMQ™ (SwiftMQ, 2020)
builds around the concept of Federated Router Net-
work, where each broker is a SwiftMQ router running
a routing engine. Even though the routing process is
dynamic, the solution is not self-organized.
The first self-organizing solution (Spohn, 2020)
for the federation of autonomous brokers inherits its
properties from a multicast protocol designed for Mo-
bile Ad Hoc Networks (MANETs). The basic idea
is to have brokers with local subscribers responsible
for building and maintaining a mesh structure around
themselves. Control overhead is kept to a minimum,
having just two control packets: core announcement
and mesh membership announcement. Mesh redun-
dancy is configurable, paving the way for a degree of
path fault tolerance as long as supported by the un-
derlying topology. Brokers connect through an over-
lay network, while publishers and subscribers behave
as usual (i.e., the brokers’ implementation adheres
to the federation protocol). Therefore, a new vari-
ant/standard for MQTT is required. On the other
hand, this work focus on designing an approach that
does not require any immediate changes to the MQTT
standard. However, the trade-off is on laying the bur-
den on clients (i.e., publishers and subscribers) re-
quired to be aware and adhere to the federation proto-
col by themselves.
Intel proposed Distributed Publish & Subscribe
for the Internet of Things (DPS) (Corp., 2020) as a
distributed implementation of the P/S communication
mechanism. DPS builds a mesh network around sub-
scribers, providing the routing from publishers to sub-
scribers based on subscription topics, with IP multi-
cast support in local subnets. However, DPS does not
provide means for the federation of autonomous bro-
kers (i.e., mesh deployment centers on publishers and
subscribers, without multiple independent brokers).
Park et al. (Park et al., 2018) proposed Direct
Multicast-MQTT (DM-MQTT) as a way to address
MQTT single broker limitations. As the number of
clients connected to the broker increases, there is a
direct impact on the communication delay between
publishers and subscribers. To reduce communication
delays, DM-MQTT employs Software Defined Net-
work (SDN) multicast trees to connect publishers to
subscribers, bypassing the centralized broker. Similar
to DPS, DM-MQTT is not a federation of autonomous
brokers either.
An Endogenous and Self-organizing Approach for the Federation of Autonomous MQTT Brokers
835