Fog computing
A internet das coisas (IoT) está revolucionando o cenário de TI no mundo, e já é entendida como uma tecnologia essencial para o futuro. Contudo, arquiteturas de IoT clássicas, que agrupam e processam dados centralmente, são limitadas pela largura de banda, não podendo ser infinitamente dimensionadas. Soluções de fog computing resolvem este problema.
Empresas de médio e grande porte optam pela nuvem da Alemanha. Serviços IaaS e PaaS são para campeões.
- Seguro
- Confiável
- Flexível
O que é fog computing?
Fog computing (computação em névoa) é uma tecnologia de nuvem que não transmite dados gerados por dispositivos finais diretamente à nuvem. Primeiramente, eles são pré-processados em pequenos centros de dados descentralizados, chamados fog nodes (nós de fog). Neste conceito, a estrutura de uma rede estende-se de suas bordas, locais onde dados são gerados por dispositivos de IoT, até o ponto final central da nuvem de dados pública ou do centro de processamento de dados (nuvem privada).
O objetivo do chamado fogging (nevoeiro) é diminuir o caminho da comunicação e a taxa de transferência de dados com a ajuda de redes externas. Na fog computing, fog nodes formam uma camada intermediária, responsável por decidir quais dados serão processados localmente e quais serão encaminhados à nuvem ou ao centro de dados, para análise ou processamento adicional.
O gráfico abaixo ilustra as três camadas (layers) da fog computing:
- Camada edge: A camada de borda (edge) compreende todos os dispositivos inteligentes (dispositivos de borda) de uma arquitetura de IoT. Dados gerados na camada de borda são processados diretamente no dispositivo ou transmitidos a servidores (fog nodes), na camada fog.
- Camada fog: A camada de névoa (fog) diz respeito à série de servidores avançados que recebe dados da camada de borda para os pré-processar e transmitir à nuvem, caso haja necessidade.
- Camada cloud: A camada de nuvem (cloud) é o ponto final central dos dados em uma arquitetura de fog computing.
O Industry IoT Consortium (antigo OpenFog Consortium) disponibiliza interessantes documentos de referência sobre arquitetura para fog computing. Outros artigos também podem ser encontrados no site do IIC.
O que diferencia fog computing de cloud computing?
Fog computing difere-se de cloud computing (computação em nuvem) em dois processos principais: de fornecimento de dados e de processamento de dados. Via de regra, a computação em nuvem baseia-se em centros de dados centralizados. Lá, recursos como potência e capacidade de armazenamento são reunidos após serem fornecidos por servidores back-end e utilizados por clientes, por meio da rede. A comunicação entre dois ou mais dispositivos finais ocorre, sempre, por meio de um servidor em segundo plano.
Esse tipo de arquitetura é limitado e não consegue comportar tecnologias como de fábricas inteligentes, em que dados precisam ser continuamente trocados entre inúmeros dispositivos finais. Já a fog computing, baseada em processamentos intermediários, próximo às fontes de dados, reduz a taxa de transferência de dados para o banco de dados central.
O que diferencia fog computing de edge computing?
Não são apenas altas taxas de transferência de dados em arquiteturas de IoT de grande escala que chegam ao limite da computação em nuvem. A latência também configura outro de seus problemas: o processamento centralizado de dados sempre gera atrasos, ocasionados pelos longos caminhos que dados transmitidos devem percorrer. É que dispositivos e sensores finais são obrigados a se dirigirem ao servidor do centro de dados para comunicarem-se entre si e também para aguardarem respostas às solicitações externas, após o processamento. No contexto da internet das coisas, tempos de latência são um problema, uma vez que informações devem ser transmitidas em tempo real, para que máquinas reajam imediatamente às situações.
A edge computing, parte da fog computing, oferece uma solução à latência: a tecnologia não somente processa dados descentralizadamente, como os processa localmente, no dispositivo final, ou seja, na borda (edge) da rede. Cada dispositivo inteligente é equipado com um microcontrolador próprio, capaz de processar dados básicos e comunicar-se com outros dispositivos e sensores de IoT. Assim, tanto a latência quanto a taxa de transferência de dados ao centro de dados central são reduzidas.
Apesar de fog computing e edge computing estarem intimamente relacionadas, elas não são a mesma coisa. O local onde os dados são processados as diferencia. Na edge computing, dados gerados são processados diretamente na fonte e de lá enviados, salvo exceção. Já na fog computing, dados brutos, provindos de variadas fontes, são coletados e processados em pequenos centros de dados intermediários, evitando o encaminhamento da totalidade de dados ao centro de dados central.
Não há como afirmar qual tecnologia é melhor, se a edge computing, a fog computing ou a combinação das duas. Cada situação e área de aplicação demanda uma solução específica.
Vantagens da fog computing
A tecnologia de fog computing apresenta soluções para variados problemas de infraestruturas baseadas em nuvem. Ela promete caminhos de comunicação mais curtos e evita que a nuvem seja sobrecarregada por dados, entre outros aspectos, listados abaixo:
- Diminui o tráfego na rede: Fog computing reduz o tráfego entre dispositivos de IoT e a nuvem.
- Economiza custos de redes terceirizadas: Operadoras de rede cobram caro por nuvens de alta velocidade. Parte destes custos pode ser evitada pela fog computing.
- Possui modo off-line: Dispositivos de IoT com tecnologia de fog computing também ficam disponíveis off-line.
- Reduz a latência: Fog computing encurta os caminhos de comunicação e, portanto, acelera análises automatizadas e processos de tomada de decisão.
- Protege dados: Graças ao fogging, dados de dispositivos são pré-processados na rede local, o que possibilita configurações de segurança. É possível determinar, por exemplo, que informações confidenciais não sejam transmitidas para fora da empresa ou sejam criptografados e/ou anonimizados antes da transmissão para a nuvem.
Desvantagens da fog computing
O processamento descentralizado de dados por pequenos centros de dados tem também desvantagens. Entre elas estão grandes esforços de administração e manutenção, típicos de sistemas distribuídos. Listamos, abaixo, outras questões problemáticas da fog computing:
- Altos custos de hardware: Dispositivos e sensores finais de IoT em arquiteturas de fog computing devem ser equipados com uma unidade de computação adicional, responsável por gerenciar o processamento local dos dados e a comunicação entre os dispositivos.
- Maior necessidade de manutenção: O processamento descentralizado de dados tem custos de manutenção mais elevados. É que elementos de processamento e armazenamento são distribuídos por toda a rede ao invés de encontrarem-se em um único local, como na computação em nuvem.
- Requer maior segurança de rede: Fog computing é mais suscetível a ataques man-in-the-middle.