Ensino

Workshop Suíça–Brasil na PUCRS explora Sistemas Distribuídos e suas aplicações no mundo real

quinta-feira, 03 de abril | 2025

Nos dias 15 e 16 de abril de 2025, a Escola Politécnica da PUCRS será palco do workshop “Um Olhar Atual sobre Sistemas Distribuídos: Da Pesquisa à Aplicação no Mundo Real”, um evento gratuito e aberto ao público, com participação presencial e online. O workshop é organizado pelos professores Fernando Dotti (PUCRS/Brasil) e Fernando Pedone (USI/Suíça) e conta com apoio da FAPERGS e CNPq.

O evento propõe uma imersão no universo dos Sistemas Distribuídos, abordando desde conceitos teóricos até aplicações reais em blockchain, computação em nuvem, bancos de dados e telecomunicações. Durante os dois dias, pesquisadores e profissionais do Brasil e da Suíça compartilharão conhecimentos sobre o desenvolvimento de sistemas confiáveis e escaláveis.

Temas em destaque:

  • Mecanismos de consenso e tolerância a falhas em sistemas distribuídos;
  • Fundamentos e avanços em blockchain, smart contracts e “cloud-of-clouds”;
  • Estratégias para escalabilidade e segurança de sistemas;
  • Como transformar pesquisa acadêmica em startups e soluções inovadoras;
  • Histórias de sucesso e trajetórias profissionais na área.

Quem pode participar?

O workshop é destinado a estudantes de graduação e pós-graduação, jovens pesquisadores e profissionais interessados em blockchain, cloud computing e tolerância a falhas. O evento também é uma oportunidade para qualquer pessoa curiosa sobre tecnologia distribuída que deseja entender os desafios e avanços da área.

Os participantes contarão com um ambiente descontraído, propício à troca de ideias e ao networking. Para facilitar a organização, solicita-se o preenchimento do pré-registro online no link: bit.ly/4iYRqxO

  • Programação – 15 de abril

     

    O que Blockchains, Telecomunicações e Bancos Têm em Comum – A Vida Secreta do Consenso em Sistemas Distribuídos

    • Palestrante: Fernando Pedone (USI – Suíça)
    • Horário: 13h30

    Resumo: O consenso é um problema fundamental em sistemas distribuídos, relacionado a fazer com que um grupo de máquinas concorde sobre um único valor, apesar de falhas ou atrasos. Desde o trabalho seminal de Lamport, Shostak e Pease, o consenso se tornou a espinha dorsal de muitos sistemas tolerantes a falhas. Esta palestra explora a teoria e a prática do consenso, começando por seus fundamentos e examinando como ele sustenta estratégias críticas de replicação. Serão abordados três estudos de caso do mundo real que o palestrante vivenciou em primeira mão: replicação de bancos de dados, que utiliza consenso para manter a consistência entre réplicas; sistemas de processamento de grafos em larga escala, onde a coordenação é essencial para garantir a consistência entre fragmentos do grafo; e blockchain, com foco em protocolos modernos de consenso, como o Proof of Stake. Por fim, discutiremos novas direções para o consenso e as oportunidades empolgantes que aguardam aqueles que dominam a arte e a ciência do acordo distribuído.

    Quase 100 anos de cooperação em computação distribuída – Transcorrer, Resultados e Perspectivas

    • Palestrante: Fernando Dotti (PUCRS)
    • Horário: 14h

    Resumo: Esta apresentação contextualiza os assuntos e contribuições de pesquisa desenvolvidos no escopo da colaboração entre apresentadores deste workshop. Isto é feito mostrando tanto as relações entre os autores envolvidos como sumarizando os desafios e resultados enfrentados.

    Uma Carreira Consistente em Computação Distribuída

    • Palestrante: Lásaro Camargos
    • Horário: 14h30

    Resumo: A computação distribuída é a base que torna viáveis muitas das inovações tecnológicas que dominam a mídia, como inteligência artificial, blockchain, jogos online, computação em nuvem e plataformas de streaming. Essas tecnologias exigem arquiteturas distribuídas com alto grau de escalabilidade, confiabilidade e corretude—características que, muitas vezes, entram em conflito. Como profissionais da área, precisamos constantemente encontrar o melhor equilíbrio entre esses fatores, o que torna nosso trabalho desafiador e estimulante. Nesta apresentação, compartilharei minha trajetória como pesquisador e desenvolvedor em computação distribuída, discutindo os desafios e oportunidades dessa carreira essencial, mas frequentemente subestimada.

    Atomic Multicast: do Skeen ao Pacheco

    • Palestrante: Paulo Coelho (UFU)
    • Horário: 15h30

    Resumo: Construir aplicações distribuídas é uma tarefa complexa, e o particionamento de dados, ao mesmo tempo que possibilita aumentar a escalabilidade das aplicações, introduz complexidade adicional ao coordenar operações entre grupos de réplicas. O Multicast atômico é uma abstração de comunicação que simplifica o raciocínio e a construção de sistemas particionados. Ele permite que mensagens sejam entregues de forma confiável a um subconjunto dos grupos do sistema, garantindo ao mesmo tempo uma ordem parcial nas mensagens entregues. Esta apresentação apresenta um pouco do histórico do desenvolvimento de algoritmos de multicast atômico baseados em timestamp, enfatizando a importância de reduzir o número de passos de comunicação para melhor o desempenho de sistemas modernos geograficamente distribuídos.

    Compondo State Machine Replicas

    • Palestrante: Odorico Mendizabal (UFSC)
    • Horário: 16h

    Resumo: State Machine Replication (SMR) é uma técnica fundamental para construir serviços altamente disponíveis e tolerantes a falhas. Embora a SMR tenha sido amplamente estudada e otimizada ao longo dos anos, um aspecto permanece inexplorado: a composição de serviços. Esta palestra introduz uma nova perspectiva sobre a SMR, definindo sua composicionalidade e demonstrando como a combinação de máquinas de estado replicadas pode levar a sistemas mais modulares, escaláveis e flexíveis. Ao combinar SMR por meio da composição, possibilitamos a reutilização de SMRs existentes para construir serviços complexos, mantendo a tolerância a falhas e a consistência. Essa abordagem está alinhada com aplicações modernas em larga escala, especialmente na computação em nuvem e nas arquiteturas de microsserviços. A composição aprimora a SMR ao permitir que novas funcionalidades sejam adicionadas a réplicas existentes e que diferentes réplicas executem colaborativamente partes da mesma operação. Além disso, essa técnica facilita o particionamento de estado e a fragmentação (sharding), permitindo que variáveis de estado distintas sejam atribuídas a SMRs separadas, melhorando a eficiência. Ao longo da palestra, exploraremos exemplos ilustrativos que demonstram essas vantagens.

    Uma Forma Diferente de Consenso: Proof of Work & Proof of Stake

    • Palestrante: Enrique Fynn (Chorus One)
    • Horário: 16h30

    Resumo: Esta palestra explora os mecanismos de consenso em blockchains e seu papel na garantia da confiança descentralizada. Será apresentada uma visão geral da Proof of Work (PoW) e da Proof of Stake (PoS) , destacando seus pontos fortes e os compromissos envolvidos. Também abordaremos os contratos inteligentes: como eles possibilitam acordos seguros, automatizados e à prova de adulteração na blockchain. Por fim, compartilharei minha experiência prática no desenvolvimento de contratos inteligentes e os principais desafios enfrentados durante sua implementação. A sessão será encerrada com insights adquiridos e melhores práticas para a construção de aplicações baseadas em contratos inteligentes.

    Consenso Bizantino e Gossip Semântico: Escalando Sistemas Descentralizados

    • Palestrante: Ricardo Guimarães (PUCRS)
    • Horário: 17h

    Resumo: O Gossip permite escalar a comunicação para conjuntos maiores de nós e tem sido recentemente considerado como uma camada de comunicação para suportar consenso. Os protocolos de consenso tendem a apresentar alta redundância no número de mensagens trocadas entre as máquinas participantes, pois a conclusão do algoritmo exige apenas que um subconjunto das máquinas alcance um acordo. Da mesma forma, protocolos de comunicação epidêmica, como o Gossip, introduzem ainda mais redundância ao permitir que uma mesma máquina receba a mesma mensagem de diferentes pares. Por sua natureza, tanto os protocolos de consenso quanto o Gossip lidam com perdas de mensagens e falhas de processos. Essa redundância dupla levanta questões sobre a real eficiência do uso do Gossip como um bloco fundamental para consenso. Discutimos até que ponto a redundância pode ser eliminada sem comprometer a segurança e a vivacidade do consenso, e propomos uma abordagem para eliminar seletivamente a redundância considerando o uso combinado desses protocolos.

    Consenso Bizantino e Gossip Semântico: Escalando Sistemas Descentralizados

    • Palestrante: Ricardo Guimarães (PUCRS)
    • Horário: 17h

    Resumo: O Gossip permite escalar a comunicação para conjuntos maiores de nós e tem sido recentemente considerado como uma camada de comunicação para suportar consenso. Os protocolos de consenso tendem a apresentar alta redundância no número de mensagens trocadas entre as máquinas participantes, pois a conclusão do algoritmo exige apenas que um subconjunto das máquinas alcance um acordo. Da mesma forma, protocolos de comunicação epidêmica, como o Gossip, introduzem ainda mais redundância ao permitir que uma mesma máquina receba a mesma mensagem de diferentes pares. Por sua natureza, tanto os protocolos de consenso quanto o Gossip lidam com perdas de mensagens e falhas de processos. Essa redundância dupla levanta questões sobre a real eficiência do uso do Gossip como um bloco fundamental para consenso. Discutimos até que ponto a redundância pode ser eliminada sem comprometer a segurança e a vivacidade do consenso, e propomos uma abordagem para eliminar seletivamente a redundância considerando o uso combinado desses protocolos.

  • Programação – 16 de abril

    Armazenamento Cloud-of-Clouds: da Teoria à Produção

    • Palestrante: Alysson Bessani (Universidade de Lisboa)
    • Horário: 9h

    Resumo: As nuvens públicas se tornaram um pilar fundamental para muitas empresas e serviços em escala global. Em particular, o crescimento exponencial na quantidade de dados gerados tornou os serviços de armazenamento em nuvem uma infraestrutura essencial para lidar com esse volume de informações. Apesar dos grandes esforços dos provedores de nuvem para garantir a segurança de seus serviços, ainda há uma abundância de eventos relacionados a invasões, indisponibilidade e até corrupção ou destruição de dados. Uma maneira de minimizar esses riscos é explorar a diversidade do mercado de nuvem e armazenar dados em diferentes provedores, implementando uma estratégia de armazenamento em nuvem-de-nuvens. Para isso, os usuários da nuvem devem confiar em abstrações de armazenamento tolerantes a falhas construídas sobre serviços individuais, que são suscetíveis a falhas, como registros de leitura/escrita e objetos de concessão (lease objects). Muitas propostas para essas abstrações vêm tanto da comunidade teórica quanto da área de sistemas. Com base em um subconjunto desses trabalhos, selecionamos e apresentamos quatro construções (três tipos de registros e um objeto de concessão), comparando suas propriedades e custos, além de discutir como foram usadas para implementar serviços práticos de armazenamento em nuvem-de-nuvens – desde uma biblioteca de programação até um serviço comercial de armazenamento, o vawlt.io. Por fim, compartilharemos nossa experiência na transformação de pesquisas acadêmicas fundamentais em uma startup que garantiu mais de 3 milhões de euros em financiamento de capital de risco.

    How Far Can Synchronous BFT Consensus Go?

    • Palestrante: Nenad Milošević (USI – Informal Systems)
    • Horário: 9h30
    • Idioma: Inglês

    Resumo: Synchronous BFT consensus protocols offer strong fault tolerance but are often met with skepticism and viewed as impractical due to their reliance on strict timing bounds. In this talk, we present a fresh perspective on this problem and share our recent efforts toward designing more practical synchronous protocols. We start by analyzing how synchrony violations can compromise protocol correctness, even in the presence of malicious behavior. Using the BoundBFT protocol as a case study, we show that communication redundancy allows some synchronous protocols to tolerate a degree of synchrony violations without breaking safety. These results motivated a three-month empirical study of message delays in real-world networks. Based on the findings, we introduced a hybrid synchrony model that captures the observed latency patterns by distinguishing between small and large messages. Within this model, we designed AlterBFT, a new protocol that retains the fault tolerance of synchronous protocols while offering significantly better performance. This work represents a first step toward reassessing the practicality of synchronous consensus, and we plan to further explore their real-world applicability.

    Consenso Bizantino Baseado em uma Camada de Rede com Ordenação de Mensagens Tolerante a Intrusões

    • Palestrante: Eduardo Alchieri (UnB)
    • Horário: 10h

    Resumo: Trabalhos recentes propuseram protocolos de consenso que dividem as tarefas de garantir as propriedades de acordo e de terminação entre as camadas de rede e de aplicação, respectivamente. A camada de rede precisa entregar as mensagens já ordenadas para garantir acordo. Para tanto, essas soluções normalmente utilizam um sequenciador. No entanto, tolerar um sequenciador malicioso traz novos desafios, uma vez que um mesmo número de sequência pode ser atribuído para diferentes mensagens e enviadas para diferentes réplicas. Para contornar tais problemas, o NeoBFT emprega um passo adicional de comunicação entre as réplicas. Apesar de lidar com o problema, essa abordagem impacta o desempenho do sistema, uma vez que sincronizações adicionais são necessárias nas réplicas antes da execução das requisições. Este trabalho propõe o NsoBFT (Network secure ordered BFT), um protocolo de consenso que utiliza uma camada de rede com um serviço seguro de ordenação de mensagens implementado através do componente seguro USIG (Unique Sequential Identifier Generator). Desta forma, não é necessário executar sincronizações adicionais nas réplicas antes de executar as requisições. Resultados experimentais comparam as propostas similares encontradas na literatura e mostram que esta característica faz com que o NsoBFT tenha um desempenho superior ao NeoBFT.

    SkipLists em SMR: Simplificando e Aprimorando Transferência e Validação de Estado

    • Palestrante: Eliã Batista (USI – PUCRS)
    • Horário: 11h

    Resumo: A replicação de máquina de estado (SMR) garante tolerância a falhas em sistemas distribuídos ao fazer com que as réplicas executem requisições de maneira consistente. Um aspecto fundamental para o desempenho do SMR é a gestão do estado das réplicas. A gestão do estado é essencial para garantir durabilidade e consistência, mesmo quando algumas réplicas falham ou apresentam comportamento arbitrário. Investigamos o uso de estruturas de dados otimizadas para agrupar dados, permitindo a transferência paralela de estado e validação separada dos clusters. Em particular, exploramos o uso de SkipLists como estruturas de dados agrupadas autovalidáveis. Propomos uma nova estrutura baseada em SkipLists que suporta tanto a autovalidação quanto a eficiente clusterização de dados. As SkipLists oferecem algumas vantagens sobre as árvores de Merkle, amplamente utilizadas. Embora as árvores de Merkle forneçam provas criptográficas de integridade, sua estrutura hierárquica balanceada gera sobrecarga e atualizações complexas. Em contraste, as SkipLists apresentam desempenho semelhante para operações de inserção e busca, mantendo uma abordagem mais simples devido ao balanceamento probabilístico. Além disso, o design em camadas das SkipLists suporta naturalmente a clusterização e validação de clusters sem a necessidade de percorrer toda a estrutura. Ao aproveitar essas propriedades, nossa abordagem baseada em SkipLists busca aprimorar a eficiência e a escalabilidade dos sistemas SMR, melhorando a tolerância a falhas e o desempenho na recuperação de estado.

    Avaliação de Desempenho de um Algoritmo de Consenso

    • Palestrante: Lucca Dornelles Cezar (PUCRS)
    • Horário: 11h15

    Resumo: Esta palestra apresenta as experiências e resultados atuais na avaliação do desempenho do protocolo de consenso Tendermint, conduzida no âmbito de uma colaboração entre a PUCRS e a Informal Systems.

     

Programação completa em inglês: https://bit.ly/4iQOIdB