Para simplificar, descreverei isso usando uma configuração típica de casa inteligente como referência, mas nada aqui é realmente corrigido pelo aplicativo. A topologia de alto nível é igualmente adequada para um aplicativo de monitoramento de fazendas que abrange vários quilômetros com milhares ou sensores, rastreando vagas de estacionamento em uma cidade ou gerenciamento de iluminação em um prédio de escritórios.
Trataremos o problema aproximadamente em camadas da hierarquia de dispositivos, o que pode corresponder ao aumento da complexidade de uma instalação ou à extração de cenários de casos de uso específicos. Aqui está o meu diagrama generalizado cobrindo toda a rede.
Nível do nó
O nó individual no meu diagrama é uma lâmpada conectada por WiFi com uma chave de substituição física local. O nó geralmente possui funções de sensor e controle e uma pequena quantidade de computação / armazenamento local. Idealmente, o nó pode atuar de forma autônoma. O nó pode assumir o controle de comutadores locais, diretamente pela LAN (se houver WiFi / Bluetooth) ou pelo hub local ou pela nuvem. Um nó frequentemente mantém uma conexão TCP persistente com o hub ou a nuvem.
Um local normalmente contém vários nós, com diferentes funções, usando várias opções de conectividade. Uma casa inteligente pode coletar temperatura interna / externa, atividade e dados de vídeo. Os sensores remotos podem usar conexões diferentes para a Internet. Os nós normalmente usam microcontroladores , geralmente em baixas frequências de clock.
Nível do hub Em uma casa inteligente, pode haver vários hubs (um para cada fornecedor de dispositivo), agregação ou hierarquia. O hub pode ser combinado no roteador ou autônomo. O hub nem precisa estar ativo na rede (exceto encaminhar pacotes). No entanto, o hub pode ser responsável por retransmitir comandos para um nó - comandos originários de outros nós conectados localmente ou de um servidor remoto. O hub pode implementar o encaminhamento de armazenamento de dados, a compactação ou a filtragem de dados. Realmente, o hub é apenas um facilitador. Hoje, o hub é a primeira parte da rede capaz de fornecer DNS público, o que permite publicar informações da estrutura da rede em todo o sistema. Conforme descrito nesta perguntageralmente, é necessário um hub para fazer a ponte entre o TCP-IP com fio / Wi-Fi e um protocolo de rádio de baixa potência, como zigbee ou bluetooth com baixa energia . Os hubs geralmente são construídos em torno de microprocessadores e têm menos energia que os nós.
Terminais de roaming Também conhecido como seu smartphone. Geralmente, esse é o principal ponto de interação do usuário. Um nó simples pode apresentar toda a interface do usuário por meio de um smartphone, uma vez que o nó pode estabelecer um link direto ou mediado com um dispositivo específico. Conseguir isso fundamentalmente requer um mecanismo para estabelecer confiança / propriedade / emparelhamento. Um terminal pode estabelecer se seu próprio hub está na rede local, se precisa executar toda a comunicação por meio de um servidor externo ou se é capaz de procurar o endereço IP que permite o roteamento direto para o hub 'doméstico'. O último cenário geralmente requer que o roteador esteja configurado para encaminhamento de porta.
Serviço na nuvemÉ comum que o serviço de nuvem execute a maior parte do trabalho na pilha, embora isso nem sempre seja necessário (e nem todas as implementações exigirão qualquer função de nuvem). O recurso mais útil que um servidor externo (endereçado ao público) pode oferecer é a orquestração. Cada nó e elemento intermediário da rede geralmente é capaz de se comunicar através de um canal direto com esse servidor, e o servidor pode facilmente passar mensagens de um dispositivo para os outros. O servidor pode agregar dados e apresentar visualizações ao usuário. Com base na configuração do usuário, ele também pode encaminhar informações para outros usuários (o controle de acesso e aquecimento pode ser concedido aos convidados, por exemplo, avisos de inundação / incêndio / intrusão podem usar outras opções de rede para gerar alertas). A nuvem também está bem posicionada para receber outras fontes de dados,