GNU Social é descentralizado ou distribuído? E de que importa afinal?

Autor: Manuel Ortega. Tradução por Anders Bateva.

Rede centralizada (azul); Rede descentralizada (vermelho); Rede distribuída (amarelo).

Antes de responder à pergunta sobre se o GNU Social é descentralizado ou distribuído, é interessante definir porquê é importante responder a esta pergunta, e quais são suas consequências. A distinção entre topologias de rede é uma velha ferramenta indiana para compreender as principais mudanças sociais das últimas décadas.

Este uso da distinção entre topologias de rede nos ajuda a compreender como flui a informação através de uma rede de um nó a outro, quais nós da rede são capazes de retransmitir informação a outros nós, se existem nós dos quais depende a sobrevivência da rede, e se algum dos nós tem a capacidade de filtrar e controlar a informação que os outros recebem. Em resumo, o debate sobre as topologias de rede trata sobre a autonomia dos nós e estruturas de poder. Não por acaso, um dos slogans mais famosos do movimento ciberpunk é: Sob toda arquitetura informacional, oculta-se uma estrutura de poder..

A busca e a distinção entre diferentes topologias de rede jugou um importante papel no nascimento de Internet. Em 1962 um confronto nuclear parecia uma ameaça iminente. Por isto, Paul Baran recebeu um importante encargo: a Corporação RAND lhe pediu que definisse uma estrutura sob a qual deveriam erguer-se os sistemas de comunicação que pudessem sobreviver a uma primeira onda de ataques nucleares. O principal resultado do trabalho do Baran se pode ver na imagem que exibe as diferentes topografias de rede, ilustrando este artigo.

Robustez e topologias de rede

 

Em 1996, Paul Baran, em seu famoso informe sobre a DARPAnet, apresentou 3 topologias de rede diferentes e suas características. A principal diferença entre as 3 topologias de rede apresentadas é quão robustas são perante um ataque nuclear, ou, em outras palavras, até que grau podem tolerar perturbações sem sofrer colapso total. Podemos discutir largamente e extensivamente sobre este tema e fazer uma ampla apresentação sobre a medição da robustez de uma rede, porém, em resaumo, digamos que uma rede é mais robusta conforme menos nós fiquem desconectados ao se remover um nó qualquer da rede.

Isto, mais uma olhada à imagem de topologias presente no artigo, permite-nos facilmente deixar em claro que as duas primeiras topologias, ou seja, as redes centralizadas e descentralizadas, são altamente dependentes, respectivamnente a nível global e local, dos nós centralizadores. Na rede centralizada, a queda do nó principal geraria o colapso de toda a rede, e por conseguinte, os nós sobreviventes não poderiam seguir comunicando-se entre si, por falta do nó que lhes interconecta. Pelo contrário, nas redes distribuídas, a terceira topologia que aparece na primeira imagem deste post, cada nó é independente e a queda de nenhum dos nós produziria a desconexão de outro.

Natureza social das redes distribuídas

 

A originalidade indiana foi utilizar as topologias de rede para explicar os grandes destaques da evolução social desde o século XVIII em função dos meios de comunicação dominantes de cada época (cartas, telégrafo, Internet). No livro «El poder de las redes» (O poder das redes) podemos ler uma ampla recapitulação histórica pelos últimos séculos e compreender facilmente como os progressos tecnológicos deram vida a novas estruturas de informação que, por sua vez, geraram alterações sociais. A chave na recapitulação histórica que podemos ler em «El poder de las redes» está em ver pessoas e conexão de pessoas onde Baran viu computadores e cabos.

Porém, se através da visão de Baran às topologias de rede podemos tecnicamente media a robustez das redes, o que surge da visão que nos propôs David há uma década em «El poder de las redes»?.

Esta visão rapidamente faz visíveis que, nas redes distribuídas, a não-existência de nós centrais não somente possibilita uma rede muito mais robusta, mas que também desaparecem as hierarquias, favorece-se a autonomia, e se impossibilita o controle de uns sobre os outros.

Como resultado, a natureza das redes distribuídas é completamente diferente daquela das redes descentralizadas. Uma rede distribuída não é uma rede mais descentralizada. Por isto, é muito importante responder à pergunta se GNU Social tem uma estrutura distribuída o descentralizada.

O que é GNU Social e como é sua estrutura?

Na rede se encontram várias descrições de GNU Social. A maioria delas o apresentam como uma alternativa ao Twitter, ou de forma mais geral, como um serviço de microblogging. Certamente as funções atuais e as opções que oferece o GNU Social são em sua maioria características dos serviços de microblogging. Porém, na prática, o que descobrimos é que rapidamente florecem de novo as conversações e que cada vez mais aparecem novas funções que reduzem a validez das descrições mencionadas anteriormente.

O que é GNU Social?

 

Todas os sites de microbloging ou geração de agenda usam ideias errôneas e devem ser transformadas. Ninguém necessita do «microblogging», querem sociabilização

O desejo de socializar e conectar uns com os outros faz visível o fato de que todos estes sistemas e sites não são redes sociais em si mesmas, mas sim ferramentas que, como os serviços de mensagem instantânea e e-mail, são usadas por redes sociais, isto é, redes de pessoas.

Assim, vemos que GNU Social é uma ferramenta livre para a interconexão e comunicação, usada por diferentes redes sociais. Que funções oferecerá, e o quê trocaremos através do GNU Social? Isto depende do que desejem as redes sociais que o usam.

Além do mais, o GNU Social tem uma característica particular que nos interessa especialmente e tem a ver com sua estrutura. Assim, é que voltaremos à pergunta: que estrutura tem o GNU Social?

GNU Social é descentralizado ou distribuído?

Já temos apresentado amplamente porquê é importante responder a esta pergunta. O que nos ajudará a distinguir claramente entre as 3 topologias de rede básicas é a interdependência dos nós que formam parte de uma rede. A interdependência nos conta se os nós individuales dependem dos outros para poderem comunicar-se com outros, e portanto define quão robustas são perante ataques.

Os nós em uma rede impulsionada por GNU Social são as diferentes instâncias. Uma rápida olhada na imagem deste parágrafo mostra-nos claramente que os nós de GNU Social não dependem uns dos outros para comunicarem-se, e que a queda de um deles não põe em perigo nem um pouco a sobrevivência da rede. Consequentemente, o GNU Social tem uma estrutura distribuída.

Conclusões

De tudo isto, podemos tirar duas importantes conclusões. Em primeiro lugar, damo-nos conta de que não é necessário buscar uma definição estrita para GNU Social porquê, o que se poderá fazer com ele dependerá do quê quiserem os usuários. Em segundo lugar, o GNU Social tem uma estrutura distribuída. Uma distinção importante porquê, graças a ela vemos o nascimento de uma natureza social em quê a autonomia, privacidade, e conversações são prioritárias.

CC0 O texto deste post de Anders Bateva está liberado sob domínio público.
Baseado no trabalho disponível no blog Las Indias.

7 comentários

  • Hey Anders, cheguei a ver sim!

    Em especial considerei o teu post sobre OStatus uma introdução rápida e simples bastante interessante, já tinha olhado para o código do plugin responsável pela implementação desse protocolo no GS, mas ainda não tinha procurado ler nada em especifico até cruzar com a tua publicação. Ter agora essa organização mental do protocolo é agradável.

    De facto, pelo fediverse, tenho visto essencialmente publicações inglesas, espanholas e russas mas há também alguns portugueses (que geralmente publicam em inglês, eu sou um exemplo disso). Apesar de os portugueses tenderem a publicar em inglês, (aparentemente), considero importante haver quem continue a trazer informação, em especial na área da ciência de computadores onde inglês é a língua padrão, para português. Considero, por exemplo, a tua tradução do excelente artigo do Robek sobre o começo de GNU social muito importante.

    Existem hoje formas simples de ligar um blog ao fediverse que podes estar interessado em explorar, no caso do wordpress tens estes plugins: https://wordpress.org/plugins/tags/fediverse/ e tens ainda coisas como este script: https://github.com/joshp23/feed2omb que te permitem facilmente ligar o feed do teu blog a uma conta do GNU social e propagar por OStatus (independentemente de a instancia ser self hosted individual ou partilhada como o LoadAverage).

    Btw, entretanto terminei o meu post sobre o fediverse, talvez o consideres traduzir? 🙂

    PS: Seeu criar uma instancia em português, por exemplo, por onde preferes ser notificado?

    • Que ótimo saber que estes posts serviram de alguma coisa! Eu fico às vezes decepcionado com a falta completa de comentários no meu blog. Me sinto falando para as paredes, pois fica impossível provar a existência dos leitores. Apenas contabilizar acessos não é o suficiente para mim, pois os acessos podem ser gerados por spam bots, web crawlers, ou pessoas que entraram no site mas não leram o que escrevi.

      Se você criar uma instância focada na língua portuguesa, você pode me notificar por e-mail. Eu lhe mandei uma mensagem no endereço que você preencheu no formulário de comentário. Podemos ir trocando algumas ideias por lá (apesar de que eu adoraria continuar recebendo comentário no meu blog!).

      Eu já tive meu blog ligado automaticamente ao perfil do blog no GNU Social. Primeiro tive um perfil no quitter.se, mas ninguém dava a mínima pro que eu postava, pois era em português, e por lá há poucos lusófonos perdidos num palheiro de outros idiomas. Experimentei mudar pro quitter.es, pois espanhol e português são línguas parecidas, mas ainda assim ninguém deu muita importância. Até tive seguidores em ambas as instâncias, mas de nada valiam, pois não entendiam português. Começaram a me seguir devido às respostas em inglês que eu dava a outros usuários, e também por causa do conteúdo interessante que eu re-publicava.

      Eu parei de usar o plugin que ligava meu blog ao GNU Social, aquele desenvolvido pelo pessoal do Las Indias, pois ele fechava minhas seções de comentários; somente podia-se comentar via GNU Social, e como você deve supor, a maioria das pessoas que chega a meu blog não tem conta no GS, e ainda por cima, ninguém respondia nada aos meus posts no GS.

  • Boas,

    O GNU social é apresentado como uma rede descentralizada aqui: https://indieweb.org/GNU_social e considerando estas definições simples: http://www.mediafactory.org.au/emerald-cowell/2015/02/01/centralised-decentralised-or-distributed/ parece-me fazer mais sentido que seja de facto descentralizada e não distribuída como foi aqui dito…

    Eu sou um desenvolvedor no GNU social e estava a escrever um post sobre o fediverse ( https://blog.diogo.site/posts/what-is-the-fediverse ) para newcomers e então pensei que seria bom acertar no termo. Para mim não é assim _tão_ importante o termo exacto usado para definir a rede em que o GS se enquadra uma vez aquilo que me interessa é assegurar que o comportamento do GS nessa rede está dentro de determinadas propriedades, se essas propriedades são definidas por um determinado termo ou outro não me é assim _tão_ relevante.

    Btw, era para te dar follow mas o @andersbateva@quitter.es parece não existir :/

    Happy hacking,
    Diogo

    • Eu deletei a conta do meu blog no GNU Social pois não encontrei nenhuma instância em português, e é pouco proveitoso postar em português numa instância onde ninguém entende este idioma.

      Se você conhecer alguma instância em português, por favor, me notifique, que considerarei criar uma conta nela.

      Depois lhe responderei sobre ser um modelo distribuído ou descentralizado.

      Você chegou a ver também os meus outros posts sobre o Gnu Social? https://andersbateva.xyz/tag/gnu-social/

    • Hey Anders, tudo bom?

      Sobre a questão de ser descentralizado ou distribuído, estou a preparar um seminário sobre ActivityPub e enquanto relia pelos standards e revia definições, confirmo que se trata de facto de um modelo descentralizado.

      PS.: Alerto ainda que o `s` em “GNU social” é escrito em caixa baixa.

Deixe uma resposta

O seu endereço de e-mail não será publicado.

*