O que é computação na borda?

A computação de borda otimiza os dispositivos da Internet e os aplicativos da web, aproximando a computação da origem dos dados. Isso minimiza a necessidade de comunicações de longa distância entre cliente e servidor, o que reduz a latência e o uso da largura de banda.

Objetivos de aprendizado

Após ler este artigo, você será capaz de:

  • Definição de computação de borda
  • Entenda o que significa fazer com que o código seja executado na borda de Rede
  • Perfil dos prós e contras da computação de borda

Copiar o link do artigo

O que é computação na borda?

A computação de borda é uma filosofia de Rede focada em aproximar a computação o mais próximo possível da fonte de dados, a fim de reduzir a latência e o uso da largura de banda. Em termos mais simples, computação de borda significa executar menos processos na nuvem e mover esses processos para lugares locais, como o computador de um usuário, um dispositivo de IoT ou um servidor de borda. Trazer a computação para a borda da Rede minimiza a quantidade de comunicação de longa distância que precisa acontecer entre um cliente e um servidor.

O que é a borda de Rede?

Para dispositivos de internet, a borda de Rede é onde o dispositivo, ou a Rede local, que contém o dispositivo, se comunicam com a internet. A borda é um termo um pouco confuso; por exemplo, o computador de um usuário ou o processador dentro de uma câmera de IoT podem ser considerados a borda de Rede, mas o roteador do usuário, o provedor ou o servidor de borda local também são considerados a borda. A conclusão importante é que a borda de Rede está geograficamente próxima ao dispositivo, ao contrário de servidores de origem e servidores de nuvem, que podem estar muito distantes dos dispositivos com os quais se comunicam.

O que diferencia a computação de borda de outros modelos de computação?

Os primeiros computadores eram máquinas grandes e volumosas que só podiam ser acessadas diretamente ou por terminais que eram basicamente uma extensão do computador. Com a invenção dos computadores pessoais, a computação passou a ocorrer de forma muito mais distribuída. Por um tempo, a computação pessoal era o modelo de computação dominante. Os aplicativos eram executados e os dados eram armazenados localmente no dispositivo do usuário ou, às vezes, em um data center local.

A computação em nuvem, um desenvolvimento mais recente, ofereceu uma série de vantagens sobre essa computação local. Os serviços em nuvem são centralizados em uma "nuvem" gerenciada pelo fornecedor (ou grupo de data centers) e podem ser acessados de qualquer dispositivo pela internet.

No entanto, a computação em nuvem pode apresentar latência por causa da distância entre os usuários e os data centers onde os serviços em nuvem estão hospedados. A computação de borda leva a computação para mais perto dos usuários finais para minimizar a distância que os dados precisam percorrer, ao mesmo tempo que mantém a natureza centralizada da computação em nuvem.

Resumindo:

  • Computação inicial: aplicativos centralizados em execução apenas em um computador isolado
  • Computação pessoal: aplicativos descentralizados executados localmente
  • Computação em nuvem: aplicativos centralizados em execução em data centers
  • Computação de borda: aplicativos centralizados executados próximos aos usuários, seja no próprio dispositivo ou na borda de Rede

O que é um exemplo de computação de borda?

Considere um edifício protegido por dezenas de câmeras de vídeo de IoT de alta definição. Elas são câmeras "burras" que simplesmente emitem um sinal de vídeo bruto e continuamentetransmitemesse sinal para um servidor em nuvem. No servidor em nuvem, a saída de vídeo de todas as câmeras é colocada em um aplicativo de detecção de movimento para garantir que apenas os clipes com atividade sejam salvos no banco de dados do servidor. Isso significa que há uma pressão constante e significativa na infraestrutura de internet do prédio, uma vez que uma largura de banda significativa é consumida pelo alto volume de imagens de vídeo sendo transferidas. Além disso, há uma carga muito pesada no servidor em nuvem que precisa processar as imagens de vídeo de todas as câmeras simultaneamente.

Agora imagine que o cálculo do sensor de movimento é movido para a borda de Rede. E se cada câmera usasse seu próprio computador interno para executar o aplicativo de detecção de movimento e, em seguida, enviasse a filmagem ao servidor em nuvem conforme necessário? Isso resultaria em uma redução significativa no uso da largura de banda, porque grande parte da filmagem da câmera nunca teria que viajar para o servidor em nuvem.

Além disso, o servidor em nuvem agora seria responsável apenas por armazenar as filmagens importantes, o que significa que o servidor poderia se comunicar com um número maior de câmeras sem ficar sobrecarregado. A computação de borda é mais ou menos assim.

Quais são outros casos de uso possíveis para a computação de borda?

A computação de borda pode ser incorporada a uma ampla variedade de aplicativos, produtos e serviços. Algumas possibilidades incluem:

  • Monitoramento do sistema de segurança: conforme descrito acima.
  • Dispositivos de IoT: dispositivos inteligentes que se conectam à internet podem se beneficiar da execução de código no próprio dispositivo, em vez de na nuvem, para interações mais eficientes do usuário.
  • Carros autônomos: veículos autônomos precisam reagir em tempo real, sem esperar por instruções de um servidor.
  • Armazenamento em cache mais eficiente: ao executar o código em uma Rede de borda CDN , um aplicativo pode personalizar como o conteúdo é armazenado em cache para fornecer conteúdo aos usuários de maneira mais eficiente.
  • Dispositivos de monitoramento médico: é crucial que os dispositivos médicos respondam em tempo real, sem esperar uma resposta de um servidor em nuvem.
  • Videoconferência: o vídeo ao vivo interativo ocupa uma boa quantidade de largura de banda, portanto, mover os processos de back-end para mais perto da origem do vídeo pode diminuir o atraso e a latência.

Quais são os benefícios da computação de borda?

Redução de custos

Como visto no exemplo acima, a computação de borda ajuda a minimizar o uso de largura de banda e recursos do servidor. Os recursos de largura de banda e nuvem são finitos e custam dinheiro. Com cada casa e escritório sendo equipados com câmeras inteligentes, impressoras, termostatos e até torradeiras, o Statista prevê que em 2025 haverá mais de 75 bilhões de dispositivos de IoT instalados em todo o mundo. Para oferecer suporte a todos esses dispositivos, uma quantidade significativa de computação terá que ser movida para a borda.

Performance

Outro benefício significativo de mover processos para a borda é reduzir a latência. Cada vez que um dispositivo precisa se comunicar com um servidor distante em algum lugar, isso cria um atraso. Por exemplo, dois colegas de trabalho no mesmo escritório conversando em uma plataforma de mensagens instantâneas podem ter um atraso considerável porque cada mensagem deve ser roteada para fora do prédio, comunicar-se com um servidor em algum lugar do mundo e ser trazida de volta antes que apareça na tela do destinatário. Se esse processo fosse levado para a borda e o roteador interno da empresa fosse responsável pela transferência dos bate-papos dentro do escritório, esse atraso perceptível não existiria.

Da mesma forma, quando os usuários de todos os tipos de aplicativos da web se deparam com processos que precisam se comunicar com um servidor externo, eles enfrentam atrasos. A duração desses atrasos variará com base na largura de banda disponível e na localização do servidor, mas esses atrasos podem ser evitados totalmente trazendo mais processos para a borda de Rede.

Nova funcionalidade

Além disso, a computação de borda pode fornecer novas funcionalidades que não estavam disponíveis anteriormente. Por exemplo, uma empresa pode usar a computação de borda para processar e analisar seus dados na borda, o que torna possível fazer isso em tempo real.

Recapitulando. Os principais benefícios da computação de borda são:

  • Menor latência
  • Redução do uso de largura de banda e dos custo associado
  • Redução dos recursos do servidor e dos custos associados
  • Funcionalidades adicionadas

Quais são as desvantagens da computação de borda?

Uma desvantagem da computação de borda é que ela pode aumentar os vetores de ataque. Com a adição de dispositivos mais "inteligentes" à essa combinação, como servidores de borda e dispositivos de IoT que possuem computadores embutidos robustos, há novas oportunidades para invasores maliciosos comprometerem esses dispositivos.

Outra desvantagem da computação de borda é que ela requer mais hardware local. Por exemplo, enquanto uma câmera de IoT precisa de um computador embutido para enviar seus dados de vídeo brutos para um servidor web, ela exigiria um computador muito mais sofisticado com mais poder de processamento para executar seus próprios algoritmos de detecção de movimento. Mas a queda nos custos de hardware está tornando mais barato construir dispositivos mais inteligentes.

Uma maneira de mitigar completamente a necessidade de hardware extra é aproveitar os servidores de borda. Por exemplo, com a Rede da Cloudflare de 330 locais de presença distribuídos geograficamente na borda, os clientes da Cloudflare podem ter o código de borda em execução em todo o mundo usando o Cloudflare Workers.