Maio 31, 2021
Do Passa Palavra
302 visualizações


Por Z1010010

Já se falou muito aqui no Passa Palavra da necessidade de construir espaços nossos nos meios virtuais. Textos publicados aqui no Passa Palavra chamaram a atenção para várias coisas: a negligência de amplos setores da esquerda quanto ao “mundo” digital (aqui, aqui, aqui, aqui, aqui, aqui, aqui, aqui), os problemas da excessiva confiança nesse “mundo” por outros setores da esquerda (aqui, aqui, aqui, aqui, aqui, aqui, aqui, aqui, aqui, aqui, aqui, aqui, aqui, aqui, aqui), e os problemas gerais do uso da internet como ferramenta de controle e vigilância (aqui, aqui, aqui, aqui, aqui, aqui, aqui, aqui).

Essas leituras, tirando uma ou outra exceção, tratam de problemas intimamente ligados ao modelo “centralizado” de redes de computadores e de tecnologia, e especialmente daqueles impostos pelos GAFAM (Google, Amazon, Facebook, Apple, Microsoft). Existe um debate ainda em aberto entre “centralização” e “descentralização” na internet, sobre as vantagens e desvantagens de cada modelo. O ponto deste artigo é a comunicação distribuída, então poderá parecer a alguns uma tomada de posição em favor das redes “descentralizadas” e “distribuídas”, mas não é o caso. Topologias de rede não são “melhores” ou “piores” fora de um contexto onde atendem a necessidades específicas, e portanto são “boas”, ou não o fazem, e portanto são “más”.

Para evitar equívocos, será preciso explicar minimamente os modelos mais conhecidos de redes antes de avançar, e ressaltar que o modelo “centralizado” que se critica neste artigo diz respeito não à topologia de rede de cada serviço (que inclusive emprega várias ao mesmo tempo, a depender da necessidade), mas a uma topologia do próprio serviço, digamos de seu “modelo de negócio”, usando as topologias de rede como modelo. Depois disso, as redes “descentralizadas”, ou “federadas”, serão apresentadas como uma alternativa, e a comunicação distribuída será apresentada como um modelo interessante para quem tem maiores preocupações com privacidade.

É necessário reler o artigo anterior para relembrar os conceitos de cliente e servidor, que serão usados muitas vezes neste artigo. Se já leu, vamos ao assunto.

Para começar, observe atentamente as três imagens que compõem esta figura:

https://federacaoanarquista.com.br/wp-content/uploads/2021/05/4790728393_d4ff247622.jpg(Legenda: três topologias de rede)

A imagem da esquerda é uma topologia de rede conhecida como “estrela”, que neste artigo será o modelo da chamada “rede centralizada”. Neste modelo, os clientes conectam-se com alguma infraestrutura centralizada para usar o serviço. Um exemplo é a técnica store and forward de telecomunicações, usada por aplicativos de mensagens como o Whatsapp. Quando pensamos menos na técnica e mais no modelo de negócio, essa topologia de rede é a melhor descrição para os chamados walled gardens, “jardins murados” ou “cercadinhos”: trata-se de plataformas fechadas ou ecossistemas fechados em que o controle do prestador do serviço é muito grande, tendendo ao absoluto.

Entende-se facilmente a diferença entre uma plataforma aberta e um “cercadinho” comparando-se um PC e um videogame: enquanto um fabricante interessado (e capitalizado) pode montar um PC desde os componentes eletrônicos mais básicos se seguir certos padrões técnicos, só a empresa que patenteou um dado videogame pode montá-lo. Da mesma forma, ainda no universo gamer, quem desenvolve jogos pode precisar pagar uma licença se quiser rodar seu jogo num dado console, mas dificilmente precisa fazê-lo num PC.

Os GAFAM baseiam seu modelo de negócios na exploração de “cercadinhos” até que não seja mais possível manter de pé as cercas (patentes, termos de uso etc.). Um exemplo: usuários de Whatsapp só podem usar o Whatsapp para conversar com outros usuários do Whatsapp, que desde 2014 pertence ao Facebook. Admiradores da empresa de Mark Zuckerberg dirão que seu aplicativo de mensagens original, o Messenger, hoje até permite conversar com um perfil do Instagram, mas isso só acontece porque ele foi comprado pelo Facebook em 2012; com isso, Facebook demonstra que é possível, do ponto de vista técnico, colocar um aplicativo para “conversar” com o outro, mas há uma opção deliberada para manter os usuários presos a produtos da empresa.

Outro exemplo de “cercadinho”: é inegável a qualidade técnica do hardware produzido pela Apple, como iPhone, Mac Pro, MacBook Pro etc.; a chave para isso, além das práticas predatórias no mundo dos negócios e de sua impressionante integração vertical (pois fabrica o hardware, o software, os serviços em torno de ambos e as lojas onde se vende tudo isso), é o extremo controle sobre todos os aspectos de seus produtos, do hardware ao software, ao ponto de seus consumidores serem a ponta de lança do curioso movimento chamado right to repair (“direito de consertar”), que reivindica o direito de consertar os aparelhos em outros lugares além das lojas da Apple.

Deixemos para trás essa primeira topologia. Agora volte à primeira figura e observe atentamente a topologia do centro, que também pode ser representada assim:

https://federacaoanarquista.com.br/wp-content/uploads/2021/05/600px-TreeTopology.png

(Legenda: rede em “árvore”, “estrela de estrelas” ou “floco de neve”)

Esta topologia híbrida poderia ser uma “árvore”, uma “estrela de estrelas” ou um “floco de neve”, e será usada aqui como modelo de uma “rede descentralizada”. Nela, várias redes “estrela” são ligadas entre si: em vez de haver um só “centro” para o qual convergem os clientes, há vários “centros”, cada qual com seus próprios clientes, e estes “centros”, quando ligados entre si, intermedeiam o diálogo entre clientes.

Comparado ao modelo “centralizado”, o modelo “descentralizado” de comunicações na internet parece algo “revolucionário”, “inovador”, “disruptivo” — mas era essa a forma original da rede, que existe ainda hoje, por exemplo, na forma como funcionam os e-mails: uma conta do GMail pode ser usada para “conversar” com uma conta do Riseup, porque a própria estrutura lógica por trás dos e-mails foi construída para permitir esse diálogo, formando, portanto, um ecossistema aberto em que várias plataformas individualmente consideradas usam um mesmo padrão tecnológico aberto para dialogar entre si. É contra esse modelo original que foi sendo construído aos poucos o modelo “centralizado”, baseado nos “cercadinhos” dos GAFAM e em suas práticas predatórias. Pessoas inteiradas na história do desenvolvimento do capitalismo encontrarão um paralelo desse processo nos enclosures, nos “cercamentos”, pelos quais terras comuns e de pequenos camponeses foram sendo tomadas por senhores; esse processo, que é um dos elementos da chamada “acumulação primitiva”, aconteceu também no meio digital.

Nas redes sociais, o chamado “Fediverso” tenta recuperar essa descentralização original da internet em redes sociais como Hubzilla, Mastodon, Peertube, Pubcast, Salut à Toi, Pixelfed, Pleroma, Media Goblin, Socialhome, Diaspora, Pump, Write.as, Friendica etc. No Brasil, o Passa Palavra foi um dos primeiros veículos de imprensa a fazer uma aposta em redes sociais federadas como o Mastodon, muito antes de virarem moda em certos meios.

Quais os impactos práticos deste modelo “descentralizado”?

Esses quatro impactos práticos não são pouca coisa. Vivemos um momento em que surgem cada vez mais provas de que governos usam inteligência artificial para monitorar redes sociais de ativistas e dissidentes, que empresas como Geofeedia são denunciadas por vender informações detalhadas sobre deslocamentos pessoais para órgãos investigativos do Estado, que o governo brasileiro monitora redes sociais de jornalistas e tem um megabanco de dados sobre cada cidadão, que a polícia do Rio de Janeiro tem acesso a plataformas capazes de “prever” crimes e que o Twitter defende a legalidade e legitimidade das práticas de empresas que monitoram tuítes para a polícia. A compartimentação de informações e a migração parcial ou total para modelos “descentralizados” de difusão de informações — objeto de um artigo futuro — podem ajudar a evitar o monitoramento de redes pela polícia, denunciado há pelo menos seis anos.

Deixemos também para trás essa outra topologia. Será necessário daqui em diante o máximo de sua concentração e atenção, porque as coisas ficarão interessantes.

Volte à primeira figura e observe atentamente a imagem da direita, que representa uma rede em malha. Duas representações podem ajudar a entender melhor a topologia em malha:

https://federacaoanarquista.com.br/wp-content/uploads/2021/05/NetworkTopology-FullyConnected.png

(Legenda: rede em malha totalmente conectada)

(Legenda: rede em malha parcialmente conectada)

Nesta topologia não há “centros”. Cada ponto pode conectar-se ao outro sem intermediários; se houver necessidade de intermediação para que dois pontos interessados em conectar-se possam saber da existência um do outro, eles não passam, por isso, a depender do intermediário para seguirem conectados. É a isso a comunicação distribuída. Para melhor explicá-la, será preciso abordá-la em camadas.

Vários elementos técnicos fazem com que seja possível dizer, comparativamente, que enquanto a comunicação distribuída pauta-se por um modelo semelhante ao relacionamento de pessoa a pessoa, a comunicação “centralizada”, e também a “descentralizada” ou “federada”, pautam-se por um modelo semelhante à relação entre pessoas e lugares. Um exemplo dessas tecnologias é o endereçamento IP, que permite localizar um determinado ponto na internet e associá-lo a um servidor, a uma máquina etc. Neste artigo, o endereçamento IP será usado para demonstrar tangencialmente como mesmo as tecnologias mais aparentemente “isentas” têm consequências políticas, e de que modo outras tecnologias podem facilitar relações sociais de outro tipo.

Numa comunicação “centralizada” ou “descentralizada” o endereçamento costuma ter como base a versão 4 (IPv4) do protocolo de comunicação da internet (internet protocol, ou IP), que permite até 232 endereços de 32 bits cada, como 198.162.0.1; isso totaliza 4.294.967.296 endereços possíveis, enquanto estimativas calculam que até 2022 haverá algo como 28,5 bilhões de dispositivos conectados à internet. Isso leva ao fenômeno da exaustão de endereços IP, que desde 31 de dezembro de 2011 é uma realidade nos níveis mais altos da hierarquia da internet e já se estendeu às áreas da Ásia e Pacífico (em 15 de abril de 2011), da América Latina e Caribe (em 10 de junho de 2014), da América do Norte (em 24 de setembro de 2015) e da África (em 21 de abril de 2017). Esse fenômeno tornou necessário o desenvolvimento e uso de tecnologias que permitam lidar com a crescente demanda por endereçamento. A primeira é a network address translation (“tradução de endereço de rede”, ou NAT), que colocam vários dispositivos sob o mesmo “IP guarda-chuva”, formando sub-redes dentro da internet que terminam atrapalhando serviços mais modernos como telefonia VoIP, videoconferências e aplicações par-a-par (peer-to-peer). (Quem já precisou “abrir porta” no modem para rodar um jogo sabe o que é isso.) Depois, foi criado o classless inter-domain routing (“roteamento entre domínios sem classes”, ou CIDR), mas mesmo isso não foi suficiente. Era preciso modificar a forma de endereçamento no próprio protocolo de comunicação da internet para superar o problema.

Por isso foi desenvolvida e finalmente introduzida ao público, em 1995, a versão 6 do protocolo de comunicação da internet (IPv6), que permite até 2128 endereços de 128 bits cada, como 2001:0db8:0000:0000:0000:8a2e:0370:7334 (que se abrevia como 2001:db8::8a2e:370:7334); isso totaliza 3,402823669×1047 endereços possíveis, ou seja, algo como um endereço para cada centímetro quadrado da superfície do planeta Terra ou mesmo mais — e como é possível (embora não seja necessário) aplicar aos novos endereços baseados no IPv6 as mesmas técnicas NAT e CIDR aplicáveis aos endereços baseados no IPv4, esse número pode ser ainda maior. Sendo praticamente impossível repetir um endereço IP nesta nova versão do protocolo, cai por terra uma das condições para a existência de intermediários como os GAFAM, pois com tantos endereços é possível — que é diferente de ser desejável, mas este debate é muito profundo para desenvolver aqui — ter um número único para cada computador, laptop, celular, tablet, impressora, smart TV… O IPv6 é, portanto, uma das condições necessárias ao desenvolvimento da internet of things (“internet das coisas”, ou IoT).

O modelo da comunicação distribuída partilha, portanto, dos mesmos princípios do modelo “descentralizado”, mas intensifica sua aplicação ao ponto de, potencialmente, não ser mais possível distinguir inequivocamente quais máquinas agem como clientes, e quais agem como servidores. Como certamente quem lê artigos com essa temática conhece ou já usou o protocolo BitTorrent, ele é o melhor e mais prático exemplo de comunicação distribuída; a descrição sumária de seu funcionamento (numa versão anterior à chegada das distributed hash tables, ou DHT) parecerá aos usuários habituais dessa tecnologia algo muito complexo, mas é o que se passa “por trás das cortinas” ao usá-la:

https://federacaoanarquista.com.br/wp-content/uploads/2021/05/Torrentcomp_small.gif

(Legenda: representação gráfica da transferência de arquivos num enxame BitTorrent.)

  • Joana tem um banco de dados enorme e precisa compartilhá-lo com outras colegas de trabalho. Para facilitar, primeiro ela cria um arquivo torrent que, em resumo, cria uma espécie de “assinatura” única para identificar esse banco de dados.
  • Joana publica não o banco de dados, mas esse arquivo torrent, num servidor. No protocolo BitTorrent, esse servidor é chamado rastreador, ou tracker.
  • Depois de publicar o torrent num rastreador, Joana encaminha o arquivo torrent para suas colegas de trabalho. Elas o abrem em seus clientes torrent. Ao ser aberto, o torrent contata o rastreador e pergunta: “quem tem o arquivo que corresponde a essa assinatura?” O “rastreador” responde: “por enquanto, só o computador de Joana, nesse endereço aqui”, e passa-lhes o endereço do computador de Joana. Na linguagem do protocolo BitTorrent, neste primeiro momento o computador de Joana é um “semeador” (seeder), e os demais são “pares” (peers); todo semeador atua, na arquitetura distribuída do protocolo BitTorrent, como um servidor, e os pares, enquanto baixam, atuam como clientes.
  • O enorme banco de dados que Joana quer transferir, ao ser transmitido usando o protocolo BitTorrent, não é transmitido inteiro, de uma só vez, mas em pedaços, para que outros computadores possam mais rapidamente agir também como semeadores. Digamos que Sara, Fernanda, Janine e Isabela, colegas de Joana, tenham começado no mesmo horário a usar o torrent para baixar o banco de dados. Assim que o computador de Sara recebe o primeiro pedaço, o rastreador retransmite aos demais computadores a informação de que o computador de Sara também pode “semear” esse pedaço junto com o de Joana; de posse dessa informação, os computadores de Fernanda, Janine e Isabela passam a receber esse primeiro pedaço de dois computadores, não mais de um só.
  • A primeira hora passou, e por diferentes Sara e Fernanda baixaram 37% do banco de dados, Janine baixou 25% e Isabela 12%. Como os computadores de Sara e Fernanda estão mais avançados que os de Janine e Isabela, o rastreador informa que também eles podem atuar como semeadores junto com o de Joana; de posse dessa informação, os computadores de Janine e Isabela “pedem” aos de Joana, Sara e Fernanda os pedaços que lhe faltam. Como o computador de Isabela é o mais retardatário, o rastreador informa-lhe que as máquinas de Joana, Sara, Fernanda e Janine têm os pedaços do banco de dados que lhe faltam, e então ele começa a buscá-los nesses semeadores. Se o computador de Joana agiu inicialmente como servidor único ao fazer a primeira semeadura, os demais atuaram simultaneamente como clientes do computador de Joana e servidores/semeadores dos demais.
  • Depois de quatro horas, os computadores de Sara, Fernanda, Janine e Isabela não só receberam o banco de dados do computador de Joana, como ajudaram-se mutuamente a baixá-lo, como num “enxame” (swarm) em que as abelhas dividem criteriosamente seu trabalho. Com o tempo, descontado o computador de Joana que tinha o banco de dados inteiro, tornava-se cada vez mais difícil distinguir claramente papéis de servidor e cliente, porque as máquinas relacionavam-se entre si como semeadoras e clientes, ora alternadamente, ora simultaneamente.
  • Agora, Carla também quer o banco de dados; ela recebeu o arquivo torrent e abriu-o num cliente. O processo se repete, agora tendo cinco semeadores; por isso, durou durou duas horas e meia em vez de quatro. Dois dias depois, Alberto e Sandra também baixaram o banco de dados, dessa vez em uma hora e quarenta e cinco minutos. À medida em que cresce o número de semeadores, a velocidade de download aumenta.

Pela estrutura do protocolo BitTorrent, deixa de existir, ou é drasticamente reduzido, o problema de muitas pessoas baixarem um arquivo de um só lugar. Digamos que Joana disponibilizasse o banco de dados diretamente a Sara, Fernanda, Janine e Isabela, e que todas o baixassem de uma vez só, como numa topologia em “estrela”. O resultado seria um “engarrafamento” na conexão de Joana, que terminaria prejudicando o download. É por isso que serviços estruturados em torno dessa topologia exigem data centers cada vez mais poderosos, caros, complexos, energeticamente dispendiosos ou mesmo “estranhos”, como os data centers submersíveis da Microsoft e o data center da Facebook em Luleå, na Suécia, situada a cerca de 109km do Círculo Polar Ártico. É evidente que os GAFAM usam e abusam da “computação em nuvem”, mas como estão no centro de uma topologia em “estrela”, mesmo essa impressionante inovação tecnológica poderá muito cedo mostrar seus limites.

Voltando ao exemplo de Joana, a estrutura do protocolo BitTorrent inverte essa situação: à medida em que novos pares vão recebendo pedaços do banco de dados de Joana, agem também como semeadores, dividindo com o computador de Joana a tarefa de distribuir o banco de dados. Essas máquinas passam a cooperar entre si, aumentando cada vez mais a capacidade de semear o banco de dados de Joana. Vendo a situação de um ponto de vista teórico, hipotético e abstrato, essa colaboração, essa distribuição de trabalho, pode chegar até o ponto ideal em que o maior “obstáculo” à transferência de arquivos passa a ser não mais a velocidade da conexão do servidor à internet, como numa transferência direta de arquivos no modelo “estrela”, mas a velocidade da conexão dos pares, inundados que passam a ser por uma “torrente” de dados vinda de múltiplos semeadores.

Agora que já foram vistas duas camadas importantes da comunicação distribuída, imagine as duas atuando uma ao lado da outra, uma sobre a outra, uma junto à outra, uma em colaboração à outra. O IPv6 e o protocolo BitTorrent são apenas dois exemplos de técnicas atualmente empregues para construir um ecossistema tecnológico em permanente construção e desenvolvimento, em que novos protocolos e tecnologias estão sendo experimentados em velocidade cada vez maior. O potencial é impressionante, próximo da ficção científica. Veja-se, por exemplo, um navegador como o Beaker Browser: ele incorpora o protocolo Hypercore, que permite, entre outras funções absolutamente fantásticas, criar um website e hospedá-lo a partir do próprio navegador. Agora, imaginem uma plataforma de rede social descentralizada como a Scuttlebutt, por meio da qual é possível conectar-se com máquinas de outras pessoas diretamente, sem servidores. Por último, se a “computação em nuvem” parece impressionante, imaginem um protocolo como o InterPlanetary File System (IPFS), que também funciona como uma rede par-a-par para guardar e compartilhar informações num sistema de arquivos distribuído baseado no armazenamento associativo.

A comunicação distribuída pode ser um elemento importante para ajudar a resolver problemas de escala na coordenação e desenvolvimento de ações coletivas. Mais que a indicação de um ou outro aplicativo que permitam entrar nesse universo, importa entender a lógica que permite escapar, ainda que provisoriamente, do seguinte dilema: como a mesma tecnologia que permite monitorar intensamente, por meio do modelo dos GAFAM, pode ser usada para a emancipação?

Essa comunicação distribuída, por si só, já parece impressionante. É preciso ter em mente, entretanto, que muitas das tecnologias por trás da comunicação distribuída ainda são experimentais, e devem ser usadas com certas cautelas. Outras, mais estáveis, já podem ser usadas com bastante proveito — e na semana que vem serão apresentados alguns desses usos práticos.

Este artigo teve como inspiração uma palestra de Martin Krafft




Fonte: Passapalavra.info