Elina MQTT Simulator (Beta)
Visión general
Elina MQTT Simulator es una aplicación Cradlepoint NCOS SDK que simula una flota de dispositivos IoT independientes —drones, UGV, sensores o cualquier otro tipo de dispositivo que hable MQTT— directamente en su CPE. Cada dispositivo simulado mantiene su propia sesión de cliente MQTT auténtica y publica según un modelo de tráfico configurable, lo que le permite generar una carga MQTT realista y conforme al protocolo desde el punto exacto de la red en el que se emitiría el tráfico de su flota real de dispositivos.
Elina MQTT Simulator está diseñado específicamente para validar la capacidad de la red y de la RAN bajo una densidad realista de flota IoT o robótica —un enjambre de drones, una flota de vehículos terrestres, un conjunto de sensores— en lugar de un único flujo de ancho de banda sintético. Complementa a QoS Agent (que supervisa la calidad básica de la red) y a Elina-TG (que genera tráfico de aplicación polivalente desde un host o una VM) aportando una simulación MQTT auténtica, por dispositivo, directamente en el CPE.
Cada dispositivo simulado es una conexión MQTT real y autónoma: no se trata de un único flujo de tráfico escalado, sino de N sesiones verdaderamente distintas, cada una con su propio ciclo de vida de conexión, su comportamiento de keepalive y su planificación de publicación.
Requisitos previos
- Un dispositivo Cradlepoint NCOS compatible con aplicaciones SDK, registrado en NetCloud Manager (NCM). Plataformas validadas: S700, E3000. Los R890, R980 y R2400 son objetivos previstos, aún no validados en hardware.
- El paquete
elina_mq(.tar.gz), disponible a través de su representante de LatenceTech. - Un broker MQTT accesible desde el dispositivo: un Reflector de LatenceTech, un broker on-premise (Mosquitto, EMQX, HiveMQ, etc.) o un servicio MQTT de terceros. Anote su host, su puerto y si requiere TLS.
Funcionalidades clave
- MQTT conforme al protocolo, no una aproximación: tráfico CONNECT / PUBLISH / ACK real con QoS 0, 1 o 2, incluido el handshake completo en cuatro pasos de QoS 2.
- MQTT v3.1.1 y v5, seleccionables por ejecución.
- TLS, con los certificados de servidor resueltos mediante el Certificate Manager propio de NCOS; el paquete no incluye ningún certificado.
- Last Will and Testament (LWT) por dispositivo simulado, para que un broker vea un estado «offline» realista en caso de desconexión no limpia.
- Una biblioteca de perfiles de dispositivos integrada y en evolución: 12 perfiles actualmente, que abarcan dispositivos civiles/IoT (drones, UGV, vehículos conectados, sensores industriales, robots cuadrúpedos y humanoides, cámaras inteligentes) y dispositivos representativos del ámbito de la defensa (enjambres de UAV tácticos, wearables para soldados, sensores y UGV de reconocimiento, nodos de sensores acústicos).
- Cuatro tipos de disparadores de flujos de publicación: tasa constante, alineado con el reloj de pared (sincronizado en toda una flota), en ráfagas y con jitter, para que un perfil pueda representar tráfico basado en eventos o aleatorio, y no solo un metrónomo.
- Plantillas de flota listas para usar (
default,iot,industrial,defense) para poner en marcha una flota mixta realista sin escribir una configuración a mano. - Configuración totalmente gestionada desde NCM: el broker de destino, TLS, la versión del protocolo, la composición de la flota y la duración de la ejecución se pueden ajustar mediante los campos App Data de NetCloud Manager, sin necesidad de enviar archivos para los cambios habituales.
Funcionamiento
A partir de una composición de flota (cuántos dispositivos de cada tipo simular) y de uno o varios perfiles de dispositivos (cómo es el tráfico MQTT de cada tipo de dispositivo), Elina MQTT Simulator:
- Construye un dispositivo simulado independiente por cada unidad de la flota.
- Conecta la sesión de cliente MQTT propia de cada dispositivo al broker elegido, escalonando ligeramente las conexiones para evitar una ráfaga de conexiones artificial.
- Ejecuta los flujos de publicación configurados de cada dispositivo según su propia planificación: un perfil de dispositivo puede combinar, por ejemplo, telemetría de alta frecuencia con actualizaciones de estado de menor frecuencia, cada una ejecutándose de forma independiente.
- Informa en directo de estadísticas agregadas de la flota (número de mensajes, caudal en bytes, salud de las conexiones), visibles a través de los registros del router y de NetCloud Manager.
- Se detiene de forma limpia al final de una duración de prueba configurada, desconectando cada dispositivo e informando de las estadísticas finales.
Descarga e instalación
- Obtenga el paquete (
elina_mq_v<version>.tar.gz) a través de su representante de LatenceTech, o descárguelo con:
wget https://api.latence.ca/software/elina_mq_v1.0.1_release.zip
- Cárguelo mediante NetCloud Manager:
- En NCM, vaya a Apps & SDK para el dispositivo o el grupo de dispositivos de destino.
- Cargue el paquete.
- Asígnelo a los dispositivos o al grupo en los que desea ejecutarlo.
- Mantenga la aplicación detenida hasta que haya definido los campos App Data que se indican a continuación: la configuración se lee una sola vez al arrancar, por lo que es más sencillo configurar primero y arrancar después.
Su primera prueba
- En NCM, abra los SDK Application Data (App Data) del dispositivo para
elina_mqy defina:
| Clave | Valor de ejemplo |
|---|---|
LTI_broker_host |
el nombre de host o la IP de su broker |
LTI_broker_port |
1883 |
LTI_use_tls |
false |
LTI_duration_seconds |
60 |
- Deje por ahora sin definir los campos de composición de la flota (
LTI_fleet_config,LTI_template): sin nada definido, la aplicación ejecuta una pequeña flota predeterminada integrada, para que pueda confirmar la conectividad antes de elegir una composición real. - Inicie la aplicación desde NCM o desde la interfaz de administración del router.
- Supervise el registro del router (
log show -f -s elina_mq) para ver cómo los dispositivos informanconnected, después las estadísticas periódicas de la flota y, por último, una detención limpia una vez transcurridoLTI_duration_seconds.
Una vez que esto funcione, elija una plantilla de flota (lo más rápido) o una cadena LTI_fleet_config personalizada para ejecutar una composición representativa de su caso de uso real; consulte la User Guide más abajo para ambas opciones.
Utilizar Elina MQTT Simulator con QoS Agent
Elina MQTT Simulator está diseñado para funcionar junto a QoS Agent en el mismo CPE:
- QoS Agent supervisa continuamente la calidad básica de la red (latencia, pérdida, caudal) en la conexión.
- Elina MQTT Simulator genera al mismo tiempo la carga de tráfico MQTT de la flota IoT.
Ejecutar ambos juntos le permite correlacionar directamente las métricas de calidad de la red con una carga de flota IoT realista y configurable, en lugar de observar la salud básica de la red y la carga de aplicación por separado.
Despliegue recomendado: ejecute QoS Agent y Elina MQTT Simulator juntos en un modelo de CPE más grande y más potente. Cada aplicación tiene su propia huella de CPU y de memoria, y ejecutarlas simultáneamente —además del funcionamiento normal del router— utiliza bastantes más recursos de la plataforma que cualquiera de ellas por separado. Póngase en contacto con su representante de LatenceTech para obtener asesoramiento sobre la elección del modelo de CPE adecuado a la escala de despliegue combinado prevista.
Documentación complementaria
Esta página cubre los aspectos básicos. Para una verdadera campaña de pruebas, consulte:
- User Guide: cada campo App Data, la biblioteca completa de perfiles, la configuración de TLS/Certificate Manager, la supervisión y la resolución de problemas, y los consejos sobre la capacidad de la plataforma.
- Profile library reference: cifras flujo por flujo, unidades y notas sobre las fuentes de cada perfil integrado, civil y de defensa.
- Fleet templates: la composición exacta detrás de cada plantilla integrada (
default,iot,industrial,defense), como punto de partida para la suya.
Sus comentarios sobre los perfiles, las funcionalidades o el comportamiento de la plataforma son siempre bienvenidos; compártalos a través de su representante de LatenceTech o del Soporte al cliente.