Para evitar la necesidad de estar en una red que permita el tráfico entrante , debe conectarse a un servidor saliente que transmitirá las solicitudes de los clientes que también realizan conexiones salientes.
En esencia, esto es como el modelo de un satélite de comunicación. Tanto la computadora o el teléfono del usuario o lo que sea, como el dispositivo IoT, mantienen los enlaces "arriba" a este servidor en la nube, y toma cada mensaje que aparece en un lado y lo envía en el otro, y viceversa.
Hay muchas formas posibles de implementar dicho servidor. Uno que está de moda actualmente es hacer que sea un corredor de MQTT . En MQTT, los clientes (tanto el dispositivo IoT como los dispositivos de usuario) realizan conexiones salientes al intermediario, y los mensajes compartidos rotos que son "publicados" en un "tema" por un cliente a todos los clientes que se han "suscrito" a ese "tema "tema.
Como ya existe una conexión establecida, el agente puede enviar tráfico no solicitado por ella sin ninguna latencia de intervalo de sondeo
Para mantener las conexiones establecidas, se envía tráfico ocasional para mantener vivo
Si la conexión se rompe, hay reglas para tratar de restablecerla
Esencialmente, la latencia notable solo ocurre si el agente intenta retransmitir un mensaje, y la conexión se rompe y aún no se repara, en cuyo caso el mensaje se retrasaría hasta que se realice la reconexión. (Hay opciones para retener mensajes, soltarlos, etc.).