Você está na página 1de 3

Tema de Mestrado

1. Título:
Replicação Ativa em Ambiente Assíncrono com Soluções Algorítmicas
baseadas em Espaço de Tuplas

2. Orientadores:
Joni da Silva Fraga (orientador)
Lau Cheuk Lung (co-orientador)

3. Descrição do problema:
O uso da Internet e suas aplicações vêm ganhando notável significância nos dias atuais.
Com isto, a demanda por sistemas mais robustos e confiáveis tem se tornado uma necessidade real.
Os serviços na Internet têm nas expectativas de seus clientes, além dos aspectos funcionais,
requisitos como a confidencialidade, a integridade, a disponibilidade e a confiabilidade. Conseguir
atender estes requisitos em sistemas distribuídos de ambientes de larga escala é sempre uma tarefa
complexa e cara. O conceito de falhas bizantinas permite a descrição de comportamentos maliciosos
que levam ao não atendimento dos requisitos citados.
Nos últimos anos, a replicação tolerante a faltas bizantinas tem sido investigada em diversos
trabalhos. O BFT [Castro99] que propõe um algoritmo para fins práticos e com pequeno custo
adicional no serviço replicado, e o [Yin03] que descreve um modelo arquitetural onde é feita uma
separação das atividades de um serviço com replicação ativa de suas necessidades de acordo e
ordem, são exemplos de contribuições relevantes na tolerância a falhas bizantinas. O BFT necessita
de 3f + 1 réplicas no seu suporte a replicação ativa, já a arquitetura de “separação”, apresentada em
[Yin03], necessita de 3f + 1 réplicas no acordo bizantino e de 2f + 1 réplicas na implementação do
serviço que executa as requisições do cliente.
As características da Internet envolvendo a larga escala dificultam o uso de soluções usuais
para os chamados problemas de acordo. Ambientes como o da rede mundial onde frequentemente
as ações de processos são coordenadas por meio de comunicações diretas e assim ficam sujeitas a
estouros de timeouts e desconexões, são melhores descritos por modelos de sistemas distribuídos
assíncronos. Mantidas estas características de coordenação e comunicação, as soluções de acordo se
tornam caras e não garantidas (condição FLP).
A introdução nestes sistemas de novos mecanismos de comunicação e coordenação
[Cabri00] que auxiliem no desenvolvimento de soluções para problemas como os de acordo em
sistemas assíncronos simplificam as aplicações, garantindo suas evoluções. É neste contexto que
pretendemos desenvolver este trabalho. A idéia é usar o modelo de coordenação generativa (ou
coordenação por espaço de tuplas) [Gelernter85] como uma alternativa para prover soluções de
problemas baseados em acordo em sistemas distribuídos assíncronos de larga escala.
O modelo de coordenação generativa define um espaço de memória compartilhado ao qual é
dado o nome de Espaço de Tuplas. Este modelo de coordenação desde a sua concepção vem sendo
investigado em diversos campos de aplicação. Um espaço de tuplas envolve estruturas de dados
genéricas conhecidas como tuplas que podem ser armazenadas e recuperadas para fins de interação.
Esta abstração pode permitir a coordenação e comunicação mais confiáveis e seguras entre
processos, desde que mantidas algumas propriedades nos serviços desta memória compartilhada
[Bessani06]. No âmbito da tolerância a faltas para sistemas abertos, o uso de um espaço de tuplas
tolerante a intrusões [Bessani07] permite que se construam aplicações tolerantes a faltas bizantinas
com certa simplicidade e flexibilidade. Este é o foco principal desta dissertação.

4. Objetivos
Esta proposta visa desenvolver algoritmos para tolerância a faltas bizantinas de aplicações
fazendo o uso da coordenação por espaço de tuplas [Bessani06, Bessani07]. As aplicações terão
seus requisitos de integridade, disponibilidade e confidencialidade atendidos por meio de uma
replicação Máquina de Estados [Schneider90] construída fazendo o uso de um espaço de tuplas na
sua coordenação e comunicação entre clientes. Este trabalho é continuação da experiência
REPEATS, onde era fornecido garantias de safety e liveness a despeito de faltas bizantinas que
pudessem ocorrer no ambiente. O presente trabalho deve fazer a revisão das soluções da experiência
que foi feita com o sistema REPEATS REPEATS. Deveremos antes de tudo rever a segurança de
agregando novos componentes de segurança no sentido de melhorar os algoritmos (menos trocas)
entre replicas e com o cliente. A arquitetura deve prover garantias diante de comportamentos
maliciosos.

5. Justificativa
A grande penetração da rede mundial e suas aplicações provocam ainda hoje uma revolução
em nossos hábitos. No entanto, junto com esta evolução, vieram também os problemas de ataques
de segurança contra diversos destes serviços disponíveis via Internet. A busca por soluções para
estas aplicações distribuídas no sentido de atender requisitos de segurança e confiabilidade tem sido
alvo de diversas pesquisas nesta última década. O grande desafio é a proposição de uma infra-
estrutura computacional capaz de comportar serviços distribuídos e protegê-los contra ataques e
intrusões perpetradas por usuários com intenção maliciosa sobre as aplicações na rede mundial.

6. Cronograma

• Estudo bibliográfico Segurança, Tolerância a Faltas e a intrusões em Sistemas Distribuídos;


(2 meses)
• Estudo sobre infra-estruturas e algoritmos distribuídos para tolerância a intrusões; (1 mês)
• Estudo do DepSpace, Repeats e experiências relacionadas; (2 meses)
• Proposição algoritmos e abstrações que façam parte da nova versão do Repats; (3 meses)
• Simulações e Obtenção de Resultados Experimentais; (3 meses)
• Preparação de Publicações; (2 meses)
• Escrita da Dissertação; (2 meses)

Total: 15 meses

7. Referências bibliográficas

[Avizienis04] Avizienis, A., Laprie, J.-C., Randell, B., and Landwehr, C. (2004). Basic concepts and taxonomy of
dependable and secure computing. IEEE Transactions on Dependable and Secure Computing,
1(1):11–33.
[Bessani06] Bessani, Alysson Neves ; Fraga, Joni Da Silva ; Lung, Lau Cheuk . BTS: A Byzantine Fault
Tolerant Tuple Space. In: The 21st Annual ACM Symposium on Applied Computing, 2006, Dijon,
France. New York, USA : ACM Press - SIGAPP, 2006. v. 1. p. 429-433.
[Bessani07] Bessani, Alysson Neves ; CORREIA, Miguel Pupo ; FRAGA, Joni Da Silva ; LUNG, Lau Cheuk .
Decoupled Quorum-based Byzantine-Resilient Coordination in Open Distributed Systems. In: 6th
IEEE International Symposium on Network Computing and Applications, 2007, Cambridge, MA
USA. p. 231-238. [Cabri00] Cabri, G., Leonardi, L., and Zambonelli, F. (2000). “Mobile-agent
coordination models for internet applications”. Computer, 33(2):82–89.
[Castro99] Castro, M. and Liskov, B. (1999). “Practical Byzantine fault tolerance”. In Proceedings of the 3rd
Symposium on Operating Systems Design and Implementation, pages 173–186. USENIX
Association.

[Gelernter85] Gelernter, D. (1985). “Generative communication in Linda”. ACM Transactions on Programing


Languages and Systems, 7(1):80–112.

[Guerraoui97] Guerraoui, R. and Schiper, A. (1997). “Software-based replication for fault tolerance”. Computer,
30(4):68–74
[Schneider90] Schneider, F. B. (1990). “Implementing Fault-Tolerant Service Using The State Machine Aproach:
A Tutorial”. ACM Computing Surveys, 22(4):299–319.

[Yin03] Yin, J., Martin, J.-P., Venkataramani, A., Alvisi, L., and Dahlin, M. (2003). “Separating agreement
from execution for Byzantine fault tolerant services”. In Proceedings of the 19th ACM Symposium
on Operating Systems Principles - SOSP’03, pages 253–267.

Você também pode gostar