Busca avançada
Ano de início
Entree

Difusão de mensagens totalmente ordenadas assistida por hardware

Processo: 17/09127-4
Linha de fomento:Bolsas no Brasil - Pós-Doutorado
Vigência (Início): 01 de setembro de 2017
Vigência (Término): 30 de novembro de 2018
Área do conhecimento:Ciências Exatas e da Terra - Ciência da Computação - Sistemas de Computação
Pesquisador responsável:Guido Costa Souza de Araújo
Beneficiário:Daniel Cason
Instituição-sede: Instituto de Computação (IC). Universidade Estadual de Campinas (UNICAMP). Campinas , SP, Brasil
Vinculado ao auxílio:13/08293-7 - CECC - Centro de Engenharia e Ciências Computacionais, AP.CEPID
Assunto(s):Programação paralela   Computação paralela   Sistemas distribuídos   Tolerância a falhas

Resumo

Existem aplicações utilizadas em data centers que devem atender milhões de requisições por segundo, e.g., a máquina de busca do Google, Spanner, Chubby, etc, enquanto simultaneamente garantem requisitos estritos: consistência forte, alta disponibilidade, previsibilidade de latência, alto desempenho e baixo consumo de energia. Para essas aplicações, um requisito de importância fundamental é o da manutenção contínua de consistência na presença de falhas parciais de seus componentes. A manutenção de consistência requer a implementação de protocolo de coordenação (consenso) entre os componentes da aplicação, que é normalmente implementado através de um protocolo de difusão de mensagens totalmente ordenadas. Infelizmente, esses protocolos são inerentemente custosos em termos de comunicação, isto é, a entrega de uma mensagem totalmente ordenada para a aplicação demanda a troca de várias mensagens pelo protocolo de ordenação total. Adicionalmente, é fato conhecido, atestado pela literatura da área, que protocolos de ordenação total de mensagens são de difícil compreensão e implementação.Assim, engenheiros de sistemas que projetam/implementam aplicações que devem ser escaláveis, ter alta disponbilidade e consistência em diferentes escalas, tem, em geral, duas opções de projeto: (a) utilização de um modelo de consistência mais fraco que o modelo de consistência serial fornecido por protocolos de ordenação total de mensagens ou (b) utilização de um procolo de ordenação total de mensagens e reconhecimento de que a aplicação atingirá potencialmente uma escala menor. A adoção de (a) permite a implementação de formas de coordenação que escalam mais facilmente mas implicam a transferência para o implementador da aplicação de toda complexidade decorrente de agora a aplicação ter a responsabilidade de resolver inconsistências, lidar com controle de concorrência (paralelismo) e falhas parciais. Nesse contexto, este projeto de pesquisa procura uma solução para o problema de escalabilidade seguindo a opção (b), isto é, procura-se mecanismos e técnicas que permitam a implementação de protocolos de ordenação total de mensagens que mantenham consistência forte e sejam escaláveis. Assim, a questão fundamental de pesquisa que o projeto pretende responder é a seguinte: É possível remover o protocolo de ordenação total de mensagens do caminho crítico de computação/comunicação percorrido por aplicações de data centers através da sua implementação em hardware? É possível obter uma implementação que não aumente o uso de recursos do data center tais como energia, armazenamento, computação, etc)? Qual é a melhor abordagem, científica e tecnológica, para internalizar a implementação do protocolo de ordenação total de mensagens no hardware de um dispositivo de comunicação (rede)?