A Internet das Coisas (IoT) está a trans­for­mar o panorama tec­no­ló­gico em todo o mundo e é con­si­de­rada uma tec­no­lo­gia fun­da­men­tal em muitos projetos futuros. No entanto, a ar­qui­te­tura clássica da IoT, na qual os dados são re­co­lhi­dos e pro­ces­sa­dos de forma cen­tra­li­zada, não pode ser expandida in­fi­ni­ta­mente devido, entre outros fatores, às li­mi­ta­ções da largura de banda. O fog computing (também chamado de com­pu­ta­ção na névoa ou fogging) propõe possíveis soluções para os problemas as­so­ci­a­dos à im­ple­men­ta­ção total da IoT.

O que é o fog computing? Uma definição

A «Fog computing» é o nome de uma tec­no­lo­gia de nuvem em que os dados gerados pelos dis­po­si­ti­vos não são car­re­ga­dos di­re­ta­mente na nuvem, mas sim pro­ces­sa­dos primeiro em centros de dados des­cen­tra­li­za­dos de menor dimensão (co­nhe­ci­dos como «nós Fog»). O conceito abrange uma rede que se estende desde os seus próprios limites, que é onde os terminais geram os dados, até ao destino central dos dados na nuvem pública ou num centro de dados privado (nuvem privada).

O objetivo do fog computing é encurtar as vias de co­mu­ni­ca­ção entre a nuvem e os dis­po­si­ti­vos e reduzir o fluxo de dados nas redes externas. Os nós de­sem­pe­nha­riam assim um papel de camada in­ter­mé­dia na rede, na qual se decide quais os dados que são pro­ces­sa­dos lo­cal­mente e quais os que são enviados para a nuvem ou para um centro de dados para serem ana­li­sa­dos ou pro­ces­sa­dos.

O gráfico seguinte apresenta es­que­ma­ti­ca­mente as três camadas (layers) de uma in­fra­es­tru­tura de com­pu­ta­ção na névoa:

Imagem: Representación esquemática de una infraestructura IoT con las capas edge, fog y cloud
En el fog computing los recursos para el al­ma­ce­na­mi­ento y la pre­pa­ra­ción de los datos abandonan la nube pública o el centro de datos y se dis­tri­buyen en una capa in­ter­me­dia en la red por medio de nodos fog o unidades de pre­pro­ce­sa­mi­ento.
  • Camada de borda: a camada de borda inclui todos os dis­po­si­ti­vos in­te­li­gen­tes (dis­po­si­ti­vos na borda da rede) de uma ar­qui­te­tura de IoT. Os dados gerados nesta camada são pro­ces­sa­dos no próprio terminal ou enviados para um servidor (nó fog) na camada de névoa.
  • Camada de fog: a camada de fog é composta por uma série de ser­vi­do­res de alto de­sem­pe­nho que recebem os dados da primeira camada, preparam-nos e enviam-nos para a nuvem, se ne­ces­sá­rio.
  • Camada da nuvem: a camada na nuvem constitui o ponto final de uma ar­qui­te­tura de fog computing.

Foi de­sen­vol­vida uma ar­qui­te­tura de re­fe­rên­cia para sistemas de fog computing no âmbito do OpenFog Con­sor­tium (agora Industry IoT Con­sor­tium (IIC)). No site do IIC é possível aceder a outros white papers.

Di­fe­ren­ças em relação à com­pu­ta­ção em nuvem

A com­pu­ta­ção em fog distingue-se da tec­no­lo­gia em nuvem, sobretudo, pelo local onde se acede aos recursos e se processam os dados. A com­pu­ta­ção em nuvem baseia-se ge­ral­mente em centros de dados cen­tra­li­za­dos. Neste caso, são os ser­vi­do­res em segundo plano que fornecem recursos como potência de pro­ces­sa­mento e memória, que os clientes utilizam através da rede. A co­mu­ni­ca­ção ocorre entre dois ou mais terminais, sempre através de um servidor em segundo plano.

Com conceitos como o da fábrica in­te­li­gente, esta ar­qui­te­tura depara-se com as suas li­mi­ta­ções, uma vez que nela existe um grande número de dis­po­si­ti­vos que estão cons­tan­te­mente a trocar dados. Apoiando-se no pro­ces­sa­mento de dados próximo da fonte, o fog computing consegue reduzir o tráfego de dados.

Di­fe­ren­ças em relação à com­pu­ta­ção na periferia da rede

Mas a com­pu­ta­ção em nuvem não é apenas so­bre­car­re­gada pelo tráfego de dados gerado pelas grandes in­fra­es­tru­tu­ras de IoT, mas também pela latência, pois o pro­ces­sa­mento cen­tra­li­zado dos dados implica depender das rotas de trans­fe­rên­cia, o que causa sempre um certo atraso. Os dis­po­si­ti­vos e os sensores têm de estar sempre em contacto com o servidor no centro de dados para poderem comunicar e aguardar tanto o tra­ta­mento externo do pedido como a própria resposta, pelo que este tempo de latência se torna um problema em processos de fabrico apoiados na IoT que ne­ces­si­tam do pro­ces­sa­mento imediato da in­for­ma­ção para que as máquinas possam reagir ime­di­a­ta­mente a qualquer incidente.

A com­pu­ta­ção de ponta (edge computing) propõe uma possível solução para este problema. De acordo com este conceito, os dados não só são pro­ces­sa­dos de forma des­cen­tra­li­zada, como também no próprio dis­po­si­tivo e, por isso, na «ponta» da rede. Para tal, é ne­ces­sá­rio equipar cada dis­po­si­tivo in­te­li­gente com um mi­cro­con­tro­la­dor próprio que permita processar os dados, mas também comunicar com outros dis­po­si­ti­vos e sensores na Internet das Coisas.

Embora o fog computing e o edge computing tenham muitos pontos em comum, não são a mesma coisa. A diferença fun­da­men­tal reside no local e no momento em que os dados são pro­ces­sa­dos. No edge computing, os dados gerados são pro­ces­sa­dos di­re­ta­mente na fonte e, nor­mal­mente, enviados di­re­ta­mente. Em con­tra­par­tida, no fog computing, os dados brutos pro­ve­ni­en­tes de várias fontes são re­co­lhi­dos e pro­ces­sa­dos num centro de dados in­ter­mé­dio. Desta forma, evita-se que dados ou re­sul­ta­dos ir­re­le­van­tes cheguem ao centro de dados central. De­pen­dendo do âmbito de aplicação, será mais adequado optar pelo fog computing ou pelo edge computing.

Vantagens da com­pu­ta­ção em nuvem

O fog computing propõe soluções para diversos problemas ca­rac­te­rís­ti­cos das in­fra­es­tru­tu­ras de TI baseadas na nuvem. À primeira vista, trata-se de conceitos que prometem encurtar os percursos de trans­fe­rên­cia e reduzir ao mínimo a carga na nuvem. Apre­sen­ta­mos aqui as prin­ci­pais vantagens:

  1. Menos tráfego: a com­pu­ta­ção em nuvem reduz o tráfego entre os dis­po­si­ti­vos IoT e a nuvem.
  2. Poupança de custos na uti­li­za­ção de redes externas: a ve­lo­ci­dade de car­re­ga­mento na nuvem é um serviço que os ope­ra­do­res de rede não oferecem gra­tui­ta­mente, mas que pode ser poupado com a fog computing.
  3. Dis­po­ni­bi­li­dade offline: os dis­po­si­ti­vos IoT numa ar­qui­te­tura de fog computing também estão dis­po­ní­veis offline.
  4. Menor latência: o fog computing encurta as vias de co­mu­ni­ca­ção, ace­le­rando assim os processos au­to­ma­ti­za­dos de análise e decisão.
  5. Segurança dos dados: no fog computing, o pré-pro­ces­sa­mento dos dados ocorre na rede local. Isto permite que os dados sensíveis per­ma­ne­çam na empresa ou que possam ser en­crip­ta­dos ou ano­ni­mi­za­dos antes de serem car­re­ga­dos para a nuvem.

Des­van­ta­gens do fog computing

No entanto, o pro­ces­sa­mento des­cen­tra­li­zado em mi­ni­cen­tros de dados também apresenta des­van­ta­gens. Estas decorrem prin­ci­pal­mente do esforço ne­ces­sá­rio para manter e ad­mi­nis­trar um sistema dis­tri­buído. As des­van­ta­gens do fog computing são:

  1. Custos de hardware mais elevados: para que os dados possam ser pro­ces­sa­dos lo­cal­mente e os dis­po­si­ti­vos possam comunicar entre si, é ne­ces­sá­rio adicionar uma unidade de pro­ces­sa­mento adicional aos dis­po­si­ti­vos IoT.
  2. Proteção in­su­fi­ci­ente contra quedas ou abusos: as empresas que apostam na fog computing têm de equipar os dis­po­si­ti­vos IoT e os sensores com con­tro­la­do­res difíceis de proteger na periferia da rede (numa fábrica in­dus­trial, por exemplo).
  3. Ne­ces­si­dade crescente de ma­nu­ten­ção: o pro­ces­sa­mento des­cen­tra­li­zado dos dados está associado a um maior esforço de ma­nu­ten­ção, porque os con­tro­la­do­res e a memória estão dis­tri­buí­dos por toda a rede e, ao contrário das soluções na nuvem, não podem ser ad­mi­nis­tra­dos ou mantidos cen­tral­mente.
  4. Maiores re­qui­si­tos de segurança de rede: a com­pu­ta­ção na nuvem é vul­ne­rá­vel a ataques man-in-the-middle.
Ir para o menu principal