¿Cómo puedo evitar que mis dispositivos IoT se rompan cuando los servicios en la nube dejan de funcionar?

8

Recientemente, Amazon S3 tuvo una interrupción que provocó la caída de muchos servicios web, incluido IFTTT , que a menudo se usa para vincular dispositivos IoT (por ejemplo, conectar su Alexa a algunas bombillas Philips Hue).

Las cámaras de seguridad Nest dejaron de funcionar , los interruptores inteligentes TP-Link se negaron a encenderse y , al parecer , alguien no pudo cambiar la sensibilidad del mouse porque se sincroniza con la nube debido a la interrupción.

En una casa inteligente con algunas bombillas Philips Hue, un Amazon Echo y algunos interruptores inteligentes, me gustaría intentar evitar problemas como ese para que mi casa no se `` caiga '' junto con los servicios en la nube.

¿Cómo puedo determinar si mis dispositivos dependen de un solo servicio y evitarlo si es posible?

Aurora0001
fuente

Respuestas:

9

Como consumidor

Sus opciones son a menudo bastante limitadas como consumidor, pero puede minimizar sus riesgos de varias maneras seleccionando cuidadosamente los productos que usa y cómo los conecta.

Verifique qué sucede cuando su dispositivo pierde la conectividad a Internet

Por lo general, puede hacer una búsqueda rápida en Google para ver qué sucede cuando un determinado dispositivo se desconecta de Internet. Algunos dispositivos simplemente fallarán por completo si se pierde su conexión a un servidor remoto en la nube, como Amazon Echo :

Su Echo requiere una conexión Wi-Fi activa para hablar, procesar sus comandos y transmitir medios.

A veces, hay una buena razón (por ejemplo, Echo tiene que transmitir comandos a la nube para procesar sus instrucciones, como se indica en ' ¿Amazon Echo' siempre está escuchando 'y enviando datos a la nube? '), Pero para otros, puede ser solo un defecto de supervisión o diseño en su producto.

Si tiene el dispositivo físicamente, podría intentar desconectar el enrutador para ver qué sucede; esto podría no ser una gran prueba, porque es más probable que un servidor remoto se rompa pero las conexiones locales seguirán funcionando, pero es algo para probar.

Con el tiempo suficiente para perder el uso productivamente para mejorar su configuración , podría oler los paquetes de sus dispositivos y luego aplicar un bloqueo a nivel de enrutador a ciertos dominios; de esta manera, sabría qué pasaría si mydeviceserver.comse cayera por completo. Por supuesto, esto llevaría mucho tiempo, por lo que podría no ser práctico probar todos sus dispositivos en una casa grande con muchos dispositivos 'inteligentes'.

Usar conectividad local

Si solo está encendiendo las luces desde su interruptor inteligente, es posible que no necesite enrutar todo el tráfico a través de Internet, a un servidor en la nube a miles de millas de distancia y de regreso a su bombilla; es posible que solo pueda enrutar el comando a través de dispositivos locales en su lugar. La mayoría de las veces, estos dispositivos utilizarán un protocolo como ZigBee o Z-Wave, por lo que es posible que necesite un concentrador para coordinar el tráfico (consulte ' ¿Por qué necesito concentradores para algunos dispositivos cuando automatizo mi hogar? ').

Como desarrollador

Para los desarrolladores de dispositivos IoT, el diseño cuidadoso de un dispositivo puede evitar problemas como la reciente interrupción del S3 que afecta a los consumidores. Por supuesto, los diseñadores de IoT no siempre son conocidos por un diseño cuidadoso , pero si estás leyendo esto, probablemente no estés en ese grupo.

Servicios de diseño para ser redundantes

En particular, para la reciente interrupción de Amazon S3, puede que no haya habido mucho que pudieras hacer. Hay algunos informes de que la replicación entre regiones podría haber evitado que los servicios se caigan, como se explica en esta pregunta en DevOps Stack Exchange , pero se debate si eso es realmente cierto o simplemente un consejo pobre .

Si es factible, sería ideal tener algún tipo de redundancia o respaldo, aunque los costos son mayores, la confiabilidad adicional es muy necesaria; de lo contrario, las luces de las personas dejan de responder, los interruptores de alimentación se niegan a funcionar, etc.

Agregue un mejor soporte para escenarios sin conexiones a Internet

Enumeré 'Usar conectividad local' bajo las formas en que un consumidor podría evitar este problema, pero es una batalla perdida . Los dispositivos a menudo no admiten la conexión de ninguna otra manera que no sea a través de su servicio web aprobado, y los fabricantes son reacios a dedicar tiempo al desarrollador en esto. Si el soporte fuera mayor, habría menos dependencia de los servicios en la nube, lo que también beneficia al fabricante, ya que no necesitan pagar tanta capacidad del servidor.

Con todas estas opciones, ¿por qué se vieron afectados tantos dispositivos?

Porque nadie quiere pasar el tiempo: diseñar cualquier tipo de sistema confiable requiere mucho tiempo y esfuerzo, y a menudo es mucho más complejo que la solución "tonta" comparable (por ejemplo, interruptores eléctricos simples).

¿Por qué el software no es tan confiable como un automóvil? Debido a que el software tiene mucha más complejidad, no se prueba tan rigurosamente como un automóvil. El mismo problema parece aplicarse con IoT: controlar dispositivos a través de una red es mucho más complejo, por lo que las cosas pueden salir mal mucho más fácilmente, como hemos visto con el reciente incidente de S3.

Aurora0001
fuente
1
¡Este parece ser muy informativo!
Prashanth Benny
1
Tal vez valga la pena señalar que la redundancia probablemente duplica el costo continuo de un servicio, y esto tendrá un gran impacto en el modelo de negocio para cualquier persona que no sea un proveedor importante.
Sean Houlihane
Su última pregunta se reirá de la industria del automóvil. El software no es tan confiable porque ni siquiera se prueba la mitad de rigurosamente que los automóviles, al menos los automóviles en los países occidentales. Esencialmente, cada software a medias puede ser lanzado. Autos, no tanto. Por cierto, la replicación entre regiones no habría ayudado la semana pasada. La replicación generalmente no se configura para fines de redundancia, sino para una rápida accesibilidad global. El blog de Netflix vinculado en esa respuesta apunta a un problema completamente diferente. Una interrupción de ELB. ELB no es almacenamiento.
Helmar
@Helmar Investigué un poco más sobre el tema de la replicación entre regiones y no hay mucha evidencia de ninguna manera: algunas personas dicen que sí, otras dicen que no . Aunque editaré esa parte. En cuanto al bit de Netflix, esa no es la parte que pretendía hacer referencia, solo se adjunta a la misma respuesta.
Aurora0001