Estamos explorando los diferentes casos y soluciones de uso de IoT. Para facilitar la exploración, la experimentación, el diseño, el desarrollo y las pruebas de una posible solución, estoy investigando la posibilidad de configurar localmente un servidor IoT simple.
Por lo tanto, me gustaría comprender la arquitectura subyacente de los servidores que dan servicio a dispositivos IoT. En términos generales, los dispositivos IoT conectan servicios que brindan datos y hacen que la información esté disponible para su uso por otros dispositivos. Esto es bastante sencillo.
Por ahora, los posibles dispositivos periféricos de IoT usarán Wi-Fi, pero planean migrar a una velocidad de datos baja, un protocolo de baja potencia como ZigBee, BLE o Z-Wave, en cuyo punto necesitaré algún tipo de hub . La carga útil de datos será de aproximadamente 100 bytes, en el pico la transmisión podría llegar a una transacción por minuto. Los dispositivos de borde de IoT cargarán principalmente datos, con una descarga ocasional a los dispositivos.
Se ha sugerido que investigue MQTT y RabbitMQ como posibles opciones. También se me ha dirigido a " Mostrar mensajes MQTT en un navegador en tiempo real " a lo que estoy investigando al momento de escribir.
Aquí hay algunas preguntas que creo que están relacionadas:
- ¿Qué diferencia a un servidor IoT de un servidor web, servidor de correo o servidor FTP?
- ¿Cuál es la arquitectura subyacente de un servidor IoT básico?
- ¿Qué características son importantes cuando se considera un servidor IoT simple y liviano?
fuente
Como señaló @ralight, el servidor IoT funciona con la pila de protocolos IoT. Esto no se limita a una capa OSI, en realidad cada etapa está o puede optimizarse para el uso de IoT y, por supuesto, se necesitan nuevos protocolos.
También es posible que el hardware no sea atípico: en una configuración pequeña, el dispositivo recolector de datos como Raspberry PI puede contener las tareas del servidor en forma total o parcial.
Parcialmente significa computación en niebla, donde los datos se procesan donde se recopilan y solo los resultados finales van al servidor principal.
Desde este sitio algunas especificaciones de hardware:
Entonces, hardware básico del servidor.
No tengo mucha información sobre esto, pero personalmente me interesaría saber si Raspberry PI es suficiente como algún tipo de servidor MQTT. Leí en algún lugar de Quora que Esp8266 no lo es, pero he visto un escritorio Linux normal trabajando en RPI, así que ¿por qué no podría actuar también como servidor?
Sin embargo, lo que hay que tener en cuenta antes de probar Raspberry son los requisitos de hardware de la pila de servicios seleccionada. Con el hardware de servidor normal, las cantidades de memoria actuales son tan altas que no habrá problemas.
Los 3000 msg / seg mencionados son relativamente altos en comparación con los casos de prueba de IoT, y RPI3 tiene 1G de RAM. Eso es la mitad, por lo que depende si los mensajes llenan la memoria en ese caso o cuánto necesita el MQTT simple. Eso afecta cuán adecuado sería.
fuente