Redes de Comunicacao para IoT
Redes de Comunicação para IoT
Conceitos sobre Internet das Coisas
A ideia principal da Internet das Coisas (IoT) é conectar coisas (sensores, atuadores, dispositivos, máquinas, pessoas etc) e realizar o armazenamento e processamento de dados na nuvem da Internet para fins de monitoramento e controle.
Os requisitos fundamentais para monitorar coisas em qualquer lugar do mundo são: identificação única para as coisas; habilidade de sensoriamento (ou atuação) de alguma informação sobre as coisas; habilidade de comunicação entre as coisas e a Internet e habilidade de controle e gerenciamento das coisas [1].
Uma Arquitetura para Internet das Coisas
Com o intuito de conectar coisas, poderíamos pensar numa arquitetura em camadas como ilustrado na figura:
(adaptado de [1])
Proposta de arquitetura em quatro camadas para Internet das coisas:
- Na primeira camada desta arquitetura estariam os dispositivos sensores e atuadores transmitindo (ou recebendo) pequenas mensagens de dados diretamente ou até gateways conectados a Internet.
- A segunda camada seria a camada de conectividade em rede para Internet das Coisas, transportando dados entre os dispositivos e a nuvem da Internet. A conectividade em rede pode envolver subsistema de computação em névoa, com processamento descentralizado entre dispositivos próximos.
- A terceira camada seria uma plataforma de serviços para Internet das Coisas, comumente hospedada na nuvem da Internet, conectando as coisas com as aplicações e provendo mecanismos e ferramentas para gerenciamento e tratamento das informações. Esta plataforma pode também utilizar dados de outras fontes ou sistemas para complementar as informações coletadas pelos sensores.
- A quarta camada seria a camada de aplicação, dedicada a uma aplicação específica, para operar e fornecer a interface usuário a um sistema de Internet das Coisas.
Arquitetura Internet
As aplicações Web que conhecemos são suportadas pela arquitetura Internet com quatro camadas de protocolos:
- Camada de enlace/física, responsável pela comunicação entre computadores diretamente conectados através de um enlace, normalmente implementada numa interface de rede, como nas redes locais Ethernet ou Wifi.
- Camada de rede, cujo principal componente é o protocolo IP.
- Camada de transporte, com os protocolos TCP e UDP.
- Camada de aplicação, cada qual com seu protocolo específico, como por exemplo o protocolo HTTP da aplicação Web.
Limitações da arquitetura Internet para Internet das Coisas
- Na Internet das Coisas muitos dispositivos sensores e atuadores são restritos em termos de processamento, memória e consumo de energia, o que limita a capacidade de implementar a pilha completa dos protocolos da Internet em cada dispositivo [2].
- O modelo cliente/servidor, comumente utilizado na Web, não é apropriado para as aplicações de Internet das Coisas. Na Internet das Coisas os dados fluem em um sentido, dos sensores para a Internet, ou em sentido contrário no caso de atuadores. Além disto, podemos ter múltiplos sensores e também múltiplas aplicações com interesse na informação dos sensores. Portanto, o modelo de comunicação mais apropriado para este tipo de aplicação é o modelo publicador/subscritor, como no protocolo MQTT.
Protocolos de Comunicação para IoT
Camada de Enlace para sensores e atuadores
Os dispositivos sensores e atuadores geralmente são restritos em termos de processamento, memória e consumo de energia. Portanto, dependendo da aplicação e do ambiente onde ficará localizado o sensor ou atuador, diferentes tecnologias de enlace podem ser utilizadas.
Para os ambientes industriais as redes IEEE 802.15.4 apresentam soluções de comunicação sem fio com baixa taxa de transmissão e baixo consumo de energia, com destaque para a tecnologia Zigbee2.
Para sensores localizados em ambientes externos, como nas aplicações de agricultura, as redes LoRaWAN (Long Range – Wide Area Networks) [6, 7] oferecem comunicação sem fio de baixa potência para longas distâncias.
Para dispositivos localizados em ambientes internos, tecnologias conhecidas como WiFi, Bluetooth, Bluetooth Low Energy (BLE) ou mesmo comunicação serial podem ser utilizadas.
Camada Rede para IoT
Um dos requisitos fundamentais para monitorar coisas é termos uma identificação única para cada dispositivo. Muitas aplicações de Internet das Coisas utilizam identificação de objetos usando RFID (Radio Frequency Identification) [6], a qual permite identificar objetos a partir de informações gravadas em uma tag. A tag é formada por um microchip com informações gravadas e uma antena para receber e transmitir sinal. O leitor lê as informações gravadas na tag por meio de um rádio transmissor e receptor e passa para um programa para análise do código RFID.
Entretanto, caso seja necessário conectar cada dispositivo à Internet será necessário um endereço IP para cada dispositivo. Assim, surge a necessidade de se utilizar a última versão do protocolo IP, o IPv6, o qual possui endereçamento suficiente para os bilhões, ou mais, de dispositivos de Internet das Coisas [6, 7].
Por outro lado, caso o dispositivo seja limitado para implementar a pilha completa de protocolos da Internet, o mesmo pode enviar seus dados a um gateway intermediário, que por sua vez encaminha as informações a nuvem da Internet. Neste caso, os dispositivos são identificados por seus respectivos gateways na Internet. Outras tecnologias de rede que podem ser utilizadas para conectar gateways remotos a Internet são as redes de telefonia móvel, como 4G e 5G.
Para os dispositivos que utilizem as redes sem fio IEEE 802.15.4 e precisem se comunicar através da Internet, é necessário adaptar o pacote da camada de rede para que o mesmo possa ser transportado por um quadro da camada de enlace. Para tanto, foi desenvolvido o padrão 6LowPAN [6, 7] que adapta o IPv6 para as limitações de tamanho do quadro impostas pelas redes IEEE 802.15.4.
Camada de Transporte para Internet das Coisas
A camada de transporte da Internet é baseada nos protocolos TCP e UDP. O TCP é o principal protocolo utilizado na Web. É um protocolo orientado a conexão, que utiliza reconhecimentos e retransmissões para oferecer um serviço de transmissão garantida de informações. Estas características do TCP não são adequadas para a comunicação entre os dispositivos da Internet das Coisas [6]. Por exemplo, para um sensor que envia periodicamente dados de uma grandeza medida, a perda de um dado pode não ser crítica, uma vez que a informação é redundante em função do número de medidas realizadas.
Portanto, na Internet das Coisas, a comunicação entre dispositivos pode ser mais eficiente com o uso do protocolo UDP. Uma mensagem transmitida pelo protocolo UDP é simplesmente enviada. Não há reconhecimentos ou retransmissões. Esta característica é conhecida como melhor esforço (best effort).
Camada Aplicação para Internet das Coisas
Como comentado na introdução desta seção, o modelo cliente/servidor comumente utilizado na Internet não é apropriado para as aplicações de Internet das Coisas.
Para aplicações de Internet das Coisas o modelo de comunicação mais apropriado é o publicador/subscritor, como utilizado no protocolo MQTT (Message Queue Telemetry Transport) [4, 6, 7], o qual é descrito na subseção 1.
Por outro lado, caso seja necessária uma comunicação direta com um dispositivo de Internet das Coisas utilizando o modelo cliente/servidor, um protocolo alternativo é o CoAP (Constrained Application Protocol) [6, 7], descrito na subseção 2.
Referências
- ↑ 1,0 1,1 Ammar Rayes & Samer Salam. Internet of Things From Hype to Reality: The Road to Digitization, Springer, 2019.
- ↑ Francis da Costa. Rethinking Internet of Things: A scalable approach to connecting everything. Apress Open, 2013.
Evandro.cantu (discussão) 17h29min de 24 de janeiro de 2022 (-03)