Visión xeral dos protocolos de rede e mensaxería para IoT

Ola, Khabrovites! O primeiro programador de IoT de curso en liña de Rusia lanza en OTUS en outubro. A inscrición para o curso está aberta agora mesmo, co cal seguimos compartindo material útil con vostede.

Visión xeral dos protocolos de rede e mensaxería para IoT

A Internet das Cousas (IoT, Internet das Cousas) construirase sobre a infraestrutura de rede existente, tecnoloxías e protocolos que se usan actualmente nos fogares/oficinas e Internet, e ofrecerá moito máis.

O propósito desta guía é ofrecer unha breve visión xeral dos protocolos de redes e aplicacións para IoT.

Nota. Debes ter coñecementos conceptos básicos das tecnoloxías de rede.

Redes IoT

IoT executarase nas redes TCP/IP existentes.

TCP/IP usa un modelo de catro capas con protocolos específicos en cada capa. Cm. Comprensión do modelo de 4 capas TCP/IP (entendemos o modelo de catro capas de TCP/IP).

O diagrama a continuación mostra unha comparación dos protocolos en uso actualmente e os máis probables de usar para IoT.

Visión xeral dos protocolos de rede e mensaxería para IoT

Notas do gráfico:

  1. O tamaño da fonte indica a popularidade do protocolo. Por exemplo, á esquerda, IPv4 é máis grande, xa que é moito máis popular na Internet moderna. Non obstante, é máis pequeno á dereita xa que se espera que IPv6 sexa máis popular no IoT.

  2. Non se mostran todos os protocolos.

  3. A maioría dos cambios son na canle (niveis 1 e 2) e nos niveis de aplicación (nivel 4).

  4. É probable que as capas de rede e transporte permanezan sen cambios.

Protocolos de capa de enlace

No nivel de enlace de datos (Data Link), cómpre conectar os dispositivos entre si. Poden estar tanto próximos, por exemplo, en redes locais (redes locais) como a gran distancia entre si: en redes urbanas (redes de área metropolitana) e globais (redes de área ampla).

Actualmente, a este nivel, as redes domésticas e de oficina (LAN) usan Ethernet e Wi-Fi, e as móbiles (WAN) usan 3G/4G. Non obstante, moitos dispositivos IoT son de baixa potencia, como os sensores, e só se alimentan con baterías. Nestes casos, a Ethernet non é adecuada, pero pódense usar Wi-Fi de baixa potencia e Bluetooth de baixa potencia.

Aínda que as tecnoloxías sen fíos existentes (Wi-Fi, Bluetooth, 3G/4G) seguirán utilizándose para conectar estes dispositivos, tamén paga a pena mirar as novas tecnoloxías deseñadas especificamente para aplicacións IoT que probablemente medren en popularidade.

Entre eles están:

  • BLE - Bluetooth Low Energy

  • LoRaWAN - WAN de longo alcance

  • SigFox

  • LTE-M

Descríbense con máis detalle no artigo. Unha visión xeral das tecnoloxías sen fíos IOT (descrición xeral das tecnoloxías IoT sen fíos).

capa de rede

Na capa de rede (Networking), o protocolo dominará a longo prazo IPv6. É pouco probable que se use IPv4, pero pode desempeñar un papel nas primeiras etapas. A maioría dos dispositivos IoT domésticos, como as lámpadas intelixentes, utilizan actualmente IPv4.

capa de transporte 

Na capa de transporte (Transporte), Internet e a web están dominados por TCP. Utilízase tanto en HTTP como en moitos outros protocolos populares de Internet (SMTP, POP3, IMAP4, etc.).

MQTT, que espero que se converta nun dos principais protocolos da capa de aplicación para a mensaxería, actualmente usa TCP.

Non obstante, no futuro, debido á menor sobrecarga, espero que UDP se faga máis popular para IoT. Probablemente máis estendido MQTT-SN, superando UDP. Ver artigo comparativo TCP vs UDP .

Capa de aplicación e protocolos de mensaxería

Características importantes dos protocolos IoT:

  • Velocidade - a cantidade de datos transferidos por segundo.

  • A latencia é o tempo que leva enviar unha mensaxe.

  • Consumo de enerxía

  • Seguridade.

  • Dispoñibilidade de software.

Actualmente, úsanse activamente dous protocolos principais neste nivel: HTTP e MQTT.

HTTP é probablemente o protocolo máis coñecido deste nivel subxacente á web (WWW). Seguirá sendo importante para IoT, xa que se usa para a API REST, o principal mecanismo de interacción entre aplicacións web e servizos. Non obstante, debido á elevada sobrecarga, é improbable que HTTP se converta no principal protocolo IoT, aínda que seguirá sendo amplamente utilizado en Internet.

MQTT (Message Queuing Telemetry Transport) converteuse no principal protocolo de mensaxería no IoT debido á súa lixeireza e facilidade de uso. Ver artigo Introdución a MQTT para principiantes (Introdución ao MQTT para principiantes).

Comparación de HTTP e MQTT para IoT

MQTT estase a converter rapidamente no estándar de facto para aplicacións IoT. Isto débese á súa lixeireza e velocidade en comparación co HTTP e ao feito de que é un protocolo de un a varios en lugar de un a un (HTTP).

Moitas aplicacións web modernas usarían encantados MQTT en lugar de HTTP se estivese dispoñible no momento do seu desenvolvemento.

Un bo exemplo é o envío de información a varios clientes, como chegadas e saídas de trens/autobuses/avións. Neste escenario, un protocolo un a un como HTTP ten moita sobrecarga e carga moito nos servidores web. A escala destes servidores web pode ser difícil. Con MQTT, os clientes conéctanse a un corredor, que se pode engadir facilmente para o equilibrio de carga. Mira o vídeo titorial sobre iso Volver a publicar datos HTML a través de MQTT (exemplo de chegadas de voos) e artigo MQTT vs HTTP para IOT.

Outros protocolos de mensaxería

HTTP non foi deseñado para aplicacións IoT, pero como se mencionou, será amplamente utilizado durante algún tempo debido ao seu uso xeneralizado en API.

Case todas as plataformas IoT admiten HTTP e MQTT.

Non obstante, hai outros protocolos que paga a pena considerar.

Protocolos

  • MQTT - (Transporte de telemetría de cola de mensaxes). Usa TCP/IP. O modelo de publicación e subscrición require un intermediario de mensaxes.

  • AMQP - (Advanced Message Queuing Protocol). Usa TCP/IP. Modelos Editor-Subscriptor e Punto a Punto.

  • COAP - (Protocolo de aplicación restrinxido). Usa UDP. Deseñado especificamente para IoT, usa o modelo de solicitude-resposta como en HTTP. RFC 7252.

  • DDS - (Servizo de Distribución de Datos) 

Neste Artigo considéranse os principais protocolos e as súas aplicacións. A conclusión deste artigo é que o IoT utilizará un conxunto de protocolos, dependendo do seu uso previsto.

Non obstante, retrospectivamente, nos primeiros anos de Internet, o protocolo HTTP que se convertería en dominante era só un dos moitos protocolos.

Aínda que HTTP non foi concibido orixinalmente para a transferencia de ficheiros e correo electrónico, hoxe úsase para ambos.

Espero que ocorra o mesmo cos protocolos de mensaxería en IoT: a maioría dos servizos utilizarán un protocolo predominante.

Abaixo amósanse gráficos de Google Trends que mostran como cambiou a popularidade de MQTT, COAP e AMQP nos últimos anos.

Visión xeral de Google Trends 

Visión xeral dos protocolos de rede e mensaxería para IoT

Soporte de protocolo por plataforma

  • Microsoft Azure - MQTT, AMQP, HTTP e HTTPS

  • AWS - MQTT, HTTPS, MQTT sobre websockets

  • IBM Bluemix - MQTT,HTTPS,MQTT

  • Thingworx — MQTT, HTTPS, MQTT, AMQP

Resumo

A maioría dos cambios son na canle (niveis 1 e 2) e nos niveis de aplicación (nivel 4).

É probable que as capas de rede e transporte permanezan sen cambios.

Na capa de aplicación, os compoñentes de IoT usarán protocolos de mensaxería. Aínda que aínda estamos nunha fase inicial do desenvolvemento de IoT, é probable que destaque un ou dous protocolos de mensaxería.

Nos últimos anos, MQTT converteuse no máis popular, e é nel no que estou a centrarme neste sitio.

HTTP tamén se seguirá utilizando xa que xa está ben integrado nas plataformas IoT existentes.

Iso é todo. Convidámoste a rexistrarte para unha lección de demostración gratuíta sobre o tema "Chatbot para comandos rápidos no dispositivo".

Le máis:

Fonte: www.habr.com

Engadir un comentario