Repensando a Internet das Coisas
Rethinking Internet of Things
Síntese de algumas ideias apresentadas no livro [1].
Introdução
O crescimento do número de dispositivos voltados a Internet das Coisas e predominância da comunicação máquina máquina (M2M) vai exigir outro tipo de infraestrutura de rede.
Algumas razões que justificam uma nova estrutura de rede [1] (p. xxv).
- Apesar do IPv6 atender o requisito de endereçamento para os dispositivos para IoT, como sensores e atuadores, a maioria deles têm limitações de processamento, memória e taxas de transmissão para suportar a pilha de protocolos IP.
- A implementação do IP exige conhecimento da rede por parte dos dispositivos, como a definição de endereços MAC para todos os tipos de dispositivos.
- As necessidades de rede dos dispositivos de IoT são completamente diferentes da comunicação da Internet. O tipo de informação trocada entre estes dispositivos envolve dados assimétricos, com mais dados fluindo dos sensores, que o contrário, e, em muitos casos, a perda de uma mensagem ou ruídos não terão consequências catastróficas. Muitos desdes dispositivos vão operar de forma autônoma, independente de ter ou não alguém "escutando" por uma informação.
- Quando há sensoreamento em tempo real e laços estritos de resposta, o controle fim a fim da das arquiteturas de rede tradicionais falham.
- A comunicação par-a-par das redes IP dificultam a riqueza da comunicação entre os dispositivos para IoT. Para estes, somente um modelo como publisher/subscriber pode atender as demandas de escala e de coleta de informações dos sensores e distribuição das mesmas aos interessados nos dados.
Conceito de arquitetura em três camadas para as redes para IoT
- Dispositivos terminais simples;
- Nós propagadores para transportar e rotear as informações coletadas para a Internet;
- Integrador de funções visando análise, controle e interface humana para IoT.
As mensagens coletadas dos dispositivos terminais serão bastante simples, como temperatura medida por um sensor ou o estado de uma válvula, e coletadas continuamente, sendo cada uma individualmente não críticas. As mensagens serão coletadas em algum lugar da rede pelos nós propagadores, onde serão filtradas, empacotadas e encaminhadas para o integrador de funções para serem utilizadas no controle dos sistemas de IoT.
[1](p. 6)
Na Internet das Coisas os dispositivos situados nas bordas da rede serão bastante diversos e limitados em termos de processamento, memória e hardware para suportar interfaces de rede sofisticadas.
Protocolos de redes tradicionais como o TCP/IP foram projetados para trabalhar com transmissão garantida de dados, por meio de reconhecimentos e retransmissões. Estes não são requisitos para os dispositivos da Internet das Coisas, como são múltiplas pequenas mensagens enviadas periodicamente, não faz sentido reenviá-las individualmente, já que a possível perda de uma delas pode não ser catastrófico.
Dispositivos como computadores pessoais e smartfones possuem hardware e sistemas operacionais sofisticados para implementar a pilha de protocolos TCP/IP. Para um dispositivos para IoT seria muito mais interessante uma interface de rede mais simples em termos de hardware e software necessário.
[1] (p. 8)
Na arquitetura proposta para Internet das Coisas, nas bordas da rede estariam os dispositivos sensores e atuadores (lado esquerdo da figura abaixo) transmitindo (ou recebendo) pequenas mensagens de dados até os nós propagadores. Os nós propagadores decidem como empacotarão e encaminharão as mensagens recebidas a outros nós propagadores ou a dispositivos integradores de mais alto nível.
[1] (p. 18)
Devido aos fatores de escala da IoT, nós propagadores devem ser capazes de se alto organizarem e descobrirem outros nós vizinhos, utilizando recursos como as redes mesh ou protocolos de roteamento. Protocolos standards de rede podem ser utilizados, com os nós propagadores fazendo a transição entre diferentes tecnologias de rede (como Bluetooth, ZigBee, Wifi, etc).
[1] (p. 34)
Alguns dispositivos podem combinar múltiplas funções de IoT num simples pacote, combinando vários dispositivos terminais e o nó propagador provendo a interconexão com a rede.
[1] (p. 20)
Chirp e arquiteturas de rede para IoT
- Chirp
As mensagens geradas pelos dispositivos terminais são bastante simples e não críticas, não necessitando de mecanismos de recobrimento de erros, exceto uma checagem de erros simples (checksum) para descartar pacotes incorretos. Este pacote de dados mínimo, chamado chirp, deve oferecer somente as funcionalidades necessárias para este tipo de mensagem, incluindo setas (arrows) indicando o sentido da transmissão, identificação do dispositivo e checksum modesto.
A seta de direção (arrows) em uma mensagem chirp indica se a mensagem é gerada ou direcionada para o dispositivo.
Cada chirp pode se conectar a um nó propagador usando diferentes tecnologias, como wireless, power lines, conexão física, etc. Também um nó propagador pode estar em comunicação com um grande número de dispositivos e provendo serviços para todos.
[1] (p. 54)
- Nós propagadores
Os nós propagadores receberão estas pequenas mensagens, realizarão as filtragens necessárias e as agruparão em pacotes e incluirão outros elementos de contexto, como localização, data e hora, etc, para serem encaminhadas pela rede.
[1] (p. 25)
A comunicação entre os dispositivos terminais e nós propagadores é caracterizada por envio periódico e constante de mensagens (super provisionamento), de forma que possíveis mensagens perdidas possam ser compensadas por novas mensagens transmitidas. Por outro lado, os nós propagadores podem apagar ou ignorar mensagens recebidas em excesso dos dispositivos terminais.
- Arquitetura de transporte e arquitetura funcional
A comunicação na IoT combina duas arquiteturas de rede: uma arquitetura de transporte e uma arquitetura funcional. A arquitetura de transporte é onde todo o tráfego de informações é transportado e é provido, primeiramente, pelos nós propagadores e encaminhando os dados através da rede Internet. A arquitetura funcional é a zona virtual de interesse criada pelos integradores de função, independente dos caminhos físicos [1] (p. 34).
- Integradores de funções
Os integradores de funções consistem de software especializado operando em plataformas computacionais conectadas a rede Internet. Implementam a arquitetura funcional dos sistemas de IoT e fazem a gestão das informações de interesse dos sistemas através do modelo publicador/subscritor.
[1] (p. 27)
- Exemplo de integrador de funções
Um exemplo de integrador de funções pode ser um sistema de monitoramento para agricultura de precisão, incluindo sensores para monitorar a umidade do solo e as demais condições atmosféricas.
[1] (p. 38)
Os dados coletados são encaminhados pelo nó propagador, com outras informações de contexto. O nó propagador pode ser um publicador (modelo publicador/subscritor) utilizando a rede internet como transporte.
Nos integradores de função as informações subscritas podem ser combinadas com dados da vizinhança da fazenda, assim como boletins meteorológicos de outras fontes públicas ou privadas.
Referências
Evandro.cantu (discussão) 15h01min de 22 de abril de 2020 (-03)