Adaptação dinâmica de protocolos de transporte em sistemas de middleware baseados em RPC - BRANDÃO, Daniel da Cruz (2025)
Um sistema distribuído adaptativo é capaz de ajustar dinamicamente (em tempo de execu ção) e autonomamente (sem intervenção humana) seu comportamento ou estrutura enquanto executa. Sistemas de middleware têm sido particularmente desenvolvidos para apoiar a im plementação deste tipo de sistema. No entanto, middlewares existentes frequentemente não permitem a adaptação dinâmica dos protocolos de comunicação, fixando-os em tempo de desenvolvimento, não permitindo trocas dos protocolos e, como consequência, engessando a comunicação entre sistemas. Esta dissertação propõe um mecanismo de adaptação, denomi nado Protocol Adaptation (pAdapt), contendo componentes de middleware que podem ser ajustados em tempo de execução e permitindo a troca do protocolo de comunicação de acordo com critérios implementados pelo desenvolvedor, como mudanças do contexto de exe cução da aplicação, e.g., o aumento da vulnerabilidade de segurança da rede leva à troca do protocolo de transporte da aplicação por um protocolo mais seguro. A solução proposta implementa componentes de oito protocolos de comunicação (UDP, TCP, TCP sobre TLS, RPC, QUIC, HTTP/1.1, HTTPS e HTTP/2) e introduz um mecanismo de adaptação sín crona. Este mecanismo, orquestrado pelo servidor e baseado no MAPE-K (Monitor, Analyser, Planner, Executor and Knowledge), garante a troca de protocolos em tempo de execução de forma coordenada entre o servidor e todos os clientes conectados, preservando o estado da comunicação e sem perda de mensagens. Ao mesmo tempo, estes novos componentes são incorporados a um framework de desenvolvimento de middleware adaptativo já existente, chamado gMidArch. Uma avaliação experimental foi realizada para comparar o desempenho da solução adaptativa proposta com middlewares comerciais como gRPC e RabbitMQ. A avaliação mostra que a sobrecarga do mecanismo de adaptação tem pouco impacto sobre o desempenho da aplicação. Ao mesmo tempo, os resultados indicam que o pAdapt com os novos componentes apresenta menor consumo de CPU no cliente em cenários de baixa carga e desempenho superior em transferências de arquivos grandes. Como principal contribuição, este trabalho permite que desenvolvedores de middleware selecionem e reconfigurem dinami camente o protocolo de comunicação mais adequado para diferentes requisitos da aplicação, sem comprometer o desempenho das aplicações.