Acceso remoto para múltiples unidades de proyecto IoT

10

Estamos en las primeras etapas de planificación de un proyecto de IoT.

Un problema con el que estamos luchando es cómo nuestro servidor basado en Internet puede acceder a cada unidad de nuestro proyecto de IoT e implementar actualizaciones de código, mensajes ... etc.

Me preocupa esto porque, por supuesto, cada unidad IoT está dentro de su propia red WiFi que está cerrada por diseño.

¿Cómo nuestro servidor, una parte esencial de nuestra configuración, llama a todos sus 'hijos' dentro de sus respectivas redes cerradas?

sisko
fuente
1
¡Bienvenido a IoT stackexchange! ¿Qué protocolos planea usar?
anónimo2
@ anonymous2: Gracias por la bienvenida. Perdóname pero soy completamente nuevo en esto. No tengo idea de qué protocolos usar, al menos, no sé a qué se refiere.
sisko
1
@Mawg: eso no es realmente cierto, incluso históricamente. Lo que es cierto es que un cliente debe iniciar la conexión, pero siempre que la conexión esté abierta, un servidor puede empujar el tráfico no solicitado. Si la conexión se rompe, el cliente la restablece. Esto no es una idea nueva.
Chris Stratton
Wah! ¿ Realmente escribí eso? Justo antes de acostarse, pero aún no hay excusa. Eliminaré ese comentario poco importante (sin embargo, creo que mi punto principal era que esto no es nada nuevo para IoT y la pregunta podría haberse hecho mejor en un sitio hermano)
Mawg dice que reinstalar a Monica el

Respuestas:

6

Parece que debería estar buscando una plataforma completa de administración de dispositivos IoT: hay demasiados aspectos complicados de escalabilidad, seguridad, aprovisionamiento y actualización de firmware para que esto sea algo sensato para intentar desarrollar en casa desde cero. Asegúrese de elegir una plataforma que utilice estándares abiertos.

Para responder su pregunta más directamente, cada punto final generalmente abre una conexión segura TLS a un servidor en la nube (usando algo como CoAP, LWM2M o MQTT dependiendo del propósito de la conexión), por lo que las conexiones casi siempre se inician desde el punto final. Solo con IPv6 o casos de uso particularmente específicos es probable que la nube inicie la conexión sin ayuda del punto final.

Sean Houlihane
fuente
5

Una buena forma de acceder a dispositivos dispersos en redes privadas es utilizando MQTT para la comunicación. En MQTT, el servidor publica mensajes sobre temas y los dispositivos pueden suscribirse a ellos y, por lo tanto, recibir una notificación cuando llega nuevo contenido al tema.

Hay soluciones disponibles en la web, usted elige una o implementa la suya.

La idea principal es hacer un tema para, por ejemplo, 'actualizaciones de firmware' y el enlace o el paquete en sí mismo son una respuesta. Los mensajes MQTT para marcar la lectura del mensaje hacen que la actualización suceda solo una vez.

mico
fuente