Conceptos de IoT y Azure IoT Hub

Por lo general, Internet de las cosas (IoT) se define como una red de dispositivos físicos que se conectan a otros dispositivos y servicios a través de Internet u otra red e intercambian datos con ellos. Actualmente, hay más de diez mil millones de dispositivos conectados en el mundo y se agregan más cada año. Todo lo que se pueda insertar con los sensores y software necesarios se puede conectar a través de Internet.

Azure IoT Hub es un servicio administrado, hospedado en la nube, que actúa como centro de mensajes para la comunicación entre una aplicación de IoT y los dispositivos conectados. Puede conectar millones de dispositivos y sus soluciones de back-end con confianza y de forma segura. La mayoría de los dispositivos se pueden conectar a un centro de IoT.

Se admiten varios patrones de mensajería, como telemetría del dispositivo a la nube, carga de archivos desde dispositivos y métodos de solicitud-respuesta para controlar los dispositivos desde la nube. IoT Hub también admite la supervisión para ayudarlo a realizar un seguimiento de la creación de dispositivos, la conexión de dispositivos y los errores de los dispositivos.

IoT Hub escala a millones de dispositivos conectados de manera simultánea y a millones de eventos por segundo para admitir las cargas de trabajo de IoT. Para obtener más información sobre cómo escalar IoT Hub, consulte Escalado de IoT Hub. Para obtener más información sobre los niveles de servicio que ofrece IoT Hub, consulte la página de precios.

Puede integrar IoT Hub con otros servicios de Azure para compilar soluciones completas de un extremo a otro. Por ejemplo, use:

  • Azure Event Grid para permitir que la empresa responda rápidamente a eventos críticos de forma confiable, escalable y segura.

  • Azure Logic Apps para automatizar procesos de negocio.

  • Azure Machine Learning para agregar aprendizaje automático y modelos de AI a la solución.

  • Azure Stream Analytics para ejecutar cálculos de análisis en tiempo real en los flujos de datos de los dispositivos.

Las aplicaciones de IoT Central usan varios centros de IoT como parte de su infraestructura escalable y resistente.

Las suscripciones de Azure disponen de límites de cuota predeterminados para evitar el uso abusivo del servicio. Estos límites podrían afectar el ámbito de su solución IoT. El límite actual es de 50 de centros de IoT Hub por suscripción. Puede solicitar un aumento de la cuota si se pone en contacto con el soporte técnico. Para obtener más información, consulte las cuotas y limitaciones de IoT Hub. Para obtener más información sobre los límites de cuota, consulte alguno de los siguientes artículos:

Dispositivos IoT

Los dispositivos IoT son distintos de otros clientes como exploradores y aplicaciones móviles. En concreto, los dispositivos de IoT:

  • A menudo son sistemas insertados sin operador humano.
  • Se pueden implementar en ubicaciones remotas, donde el acceso físico resulta costoso.
  • Es posible que solo sean accesibles a través del back-end de soluciones.
  • Es posible que tengan limitaciones de recursos de procesamiento y alimentación.
  • Es posible que tengan conectividad de red intermitente, lenta o costosa.
  • Es posible que necesiten usar protocolos de aplicación propios, personalizados o específicos de determinados sectores.

Autenticación e identidad de dispositivo

Cada centro de IoT tiene un registro de identidades que almacena información acerca de los dispositivos y módulos que pueden conectarse a él. Para que un dispositivo o un módulo se pueda conectar, debe haber una entrada para ese dispositivo o módulo en el registro de identidades del centro de IoT. Un dispositivo o un módulo se puede autenticar en el centro de IoT en función de las credenciales almacenadas en el registro de identidades.

Se admiten dos métodos de autenticación entre el dispositivo e IoT Hub. Puede usar una autenticación basada en tokens de SAS o una autenticación de certificado X.509.

El método de token de SAS proporciona la opción de autenticación para cada llamada que realice el dispositivo a IoT Hub mediante la asociación de la clave simétrica a cada llamada. La autenticación de X.509 permite la autenticación de un dispositivo IoT en la capa física como parte del establecimiento de la conexión estándar mediante Seguridad de la capa de transporte (TLS). La elección de un método u otro viene determinada principalmente por lo segura que deba ser la autenticación del dispositivo y la disponibilidad de almacenamiento seguro en este (para almacenar la clave privada de forma segura).

Puede configurar y aprovisionar muchos dispositivos a la vez mediante el servicio IoT Hub Device Provisioning.

Comunicación de dispositivos

Después de seleccionar el método de autenticación, la conexión a Internet entre el dispositivo IoT e IoT Hub se protege con el estándar de Seguridad de la capa de transporte (TLS). Azure IoT admite TLS 1.2, TLS 1.1 y TLS 1.0, en este orden. La compatibilidad con TLS 1.0 solo se proporciona para permitir versiones anteriores. Compruebe la compatibilidad con TLS en IoT Hub para ver cómo configurar el centro a fin de usar TLS 1.2, ya que proporciona la máxima seguridad.

Habitualmente, los dispositivos IoT envían datos de telemetría desde sus sensores a los servicios back-end en la nube. Pero hay otros tipos de comunicación posibles, como un servicio de back-end que envía comandos a los dispositivos. Algunos ejemplos de otros tipos de comunicación son los siguientes:

  • Un camión refrigerado que envía datos de temperatura cada 5 minutos a un centro de IoT.
  • Un servicio de back-end que envía un comando a un dispositivo para cambiar la frecuencia con la que envía los datos de telemetría que ayudan a diagnosticar un problema.
  • Un dispositivo que supervisa un reactor por lotes en una planta química y envía una alerta cuando la temperatura supera un valor determinado.

Telemetría de dispositivo

Entre los ejemplos de telemetría recibidos de un dispositivo se incluyen datos de sensor como los de velocidad o temperatura, un mensaje de error como un evento perdido o un mensaje de información para indicar que el dispositivo está en buen estado. Los dispositivos IoT envían eventos a una aplicación a fin de obtener información. Las aplicaciones pueden necesitar subconjuntos específicos de eventos para el procesamiento o el almacenamiento en distintos puntos de conexión.

Propiedades de dispositivo

Las propiedades se pueden leer o establecer desde la instancia de IoT Hub y se pueden usar para enviar notificaciones cuando se ha completado una acción. Un ejemplo de una propiedad específica en un dispositivo es la temperatura. La temperatura puede ser una propiedad grabable que se puede actualizar en el dispositivo o leer desde un sensor de temperatura conectado al dispositivo.

En IoT Hub puede habilitar propiedades mediante dispositivos gemelos o Plug and Play.

Para obtener más información sobre las diferencias entre los dispositivos gemelos y Plug and Play, vea Plug and Play.

Comandos de dispositivo

Un ejemplo de un comando es el reinicio de un dispositivo. Para implementar comandos, IoT Hub le permite invocar métodos directos en los dispositivos. Los métodos directos representan una interacción entre solicitudes y respuestas con un dispositivo similar a una llamada HTTP en la que se completan correctamente o generan un error de inmediato (tras un tiempo de espera especificado por el usuario). Este enfoque es útil en escenarios donde el curso de una acción inmediata es distinto en función de si el dispositivo pudo responder.

Acción respecto de los datos del dispositivo

IoT Hub ofrece la capacidad de desbloquear el valor de los datos del dispositivo con otros servicios de Azure para que pueda cambiar a la solución predictiva de problemas, en lugar de la administración reactiva. Conecte la instancia de IoT Hub con otros servicios de Azure para realizar aprendizaje automático, análisis e inteligencia artificial a fin de actuar sobre los datos en tiempo real, optimizar el procesamiento y obtener conclusiones más detalladas.

Nota

Azure IoT Hub no almacena ni procesa datos de clientes fuera de la geografía en la que se implementa la instancia de servicio. Para obtener más información, consulte Replicación entre regiones en Azure.

Un punto de conexión integrado recopila datos del dispositivo de manera predeterminada

Un punto de conexión integrado recopila datos del dispositivo de forma predeterminada. Los datos se recopilan mediante un patrón de solicitud-respuesta por medio de puntos de conexión de dispositivo IoT dedicados, están disponibles por una duración máxima de siete días y se pueden usar para realizar acciones en un dispositivo. Estos son los datos aceptados por el punto de conexión del dispositivo:

  • Envío de mensajes de dispositivo a nube.
  • Recepción de mensajes de nube a dispositivo
  • Iniciar cargas de archivos.
  • Recuperación y actualización de las propiedades del dispositivo gemelo.
  • Recepción de solicitudes de métodos directos.

Para obtener más información sobre los puntos de conexión de IoT Hub, vea Puntos de conexión de la guía de desarrollo de IoT Hub.

El enrutamiento de mensajes envía datos a otros puntos de conexión

Los datos también se pueden enrutar a otros servicios para el procesamiento posterior. A medida que la solución de IoT se escala horizontalmente, el número de dispositivos, el volumen y la variedad de los eventos y los distintos servicios también varían. Se necesita un método flexible, escalable, coherente y confiable para enrutar los eventos que se ajusten a este patrón. Una vez que se crea una ruta de mensaje, los datos dejan de fluir al punto de conexión integrado a menos que se haya configurado una ruta de reserva. Para obtener un tutorial en el que se muestran varios usos del enrutamiento de mensajes, vea el Tutorial de enrutamiento.

IoT Hub admite la configuración de puntos de conexión personalizados para varios servicios de Azure existentes, como los contenedores de almacenamiento, Event Hubs, las colas y los temas de Service Bus, y Cosmos DB. Una vez configurado el punto de conexión, puede enrutar los datos de IoT a cualquiera de estos puntos de conexión para realizar operaciones de datos de bajada.

IoT Hub también se integra con Event Grid, lo que permite distribuir los datos a varios suscriptores. Event Grid es un servicio de eventos totalmente administrado que le permite administrar fácilmente eventos en muchos servicios y aplicaciones de Azure diferentes. Diseñado para el rendimiento y la escala, simplifica la creación de aplicaciones controladas por eventos y arquitecturas sin servidor. Las diferencias entre el enrutamiento de mensajes y el uso de Event Grid se explican en Comparación entre el enrutamiento de mensajes y Event Grid

Pasos siguientes

Para probar una solución de IoT de un extremo a otro, consulte los siguientes inicios rápidos de IoT Hub:

Para más información sobre las distintas formas en que puede compilar e implementar soluciones de IoT con IoT de Azure, visite: