Nowadays, large enterprises, critical infrastructures, and utilities are complex systems, and consist of a number of sub-systems, often located far away from each other, that coordinate their operations over geographic networks. Typically, they are interconnected through the Internet and communicate by means of TCP/IP-based protocols. When system-level resilience is required, extremely high dependability is demanded from the network. In this paper a solution is described and evaluated that loosely resembles SDN architectures. A redundant version of MQTT is used for the data plane, whereas an adaptive mechanism is implemented in the control plane that evaluates the quality of paths and dynamically selects the best choice. To maximize dependability, yet keeping resource consumption to acceptable levels, concepts borrowed from Reinforcement Learning are exploited. An experimental campaign corroborated our expectations and showed the practical feasibility of our proposal.