Injeção distribuída de falhas para validação de dependabilidade de sistemas distribuídos de larga escala
Autor(a) principal: | |
---|---|
Data de Publicação: | 2005 |
Tipo de documento: | Dissertação |
Idioma: | por |
Título da fonte: | Biblioteca Digital de Teses e Dissertações da UFRGS |
Texto Completo: | http://hdl.handle.net/10183/5660 |
Resumo: | Uma etapa fundamental no desenvolvimento de sistemas tolerantes a falhas é a fase de validação, onde é verificado se o sistema está reagindo de maneira correta à ocorrência de falhas. Uma das técnicas usadas para validar experimentalmente um sistema é injeção de falhas. O recente uso de sistemas largamente distribuídos para execução dos mais diversos tipos de aplicações, faz com que novas técnicas para validação de mecanismos de tolerância a falhas sejam desenvolvidas considerando este novo cenário. Injeção de falhas no sistema de comunicação do nodo é uma técnica tradicional para a validação de aplicações distribuídas, para forçar a ativação dos mecanismos de detecção e recuperação de erros relacionados à troca de mensagens. A condução de experimentos com injetores de comunicação tradicionais é feita pelo uso do injetor em uma máquina do sistema distribuído. Se o cenário desejado é de múltiplas falhas, o injetor deve ser instanciado independentemente nas n máquinas que as falhas serão injetadas. O controle de cada injetor é individual, o que dificulta a realização do experimento. Esta dificuldade aumenta significativamente se o cenário for um sistema distribuído de larga escala. Outro problema a considerar é a ausência de ferramentas apropriadas para a emulação de determinados cenários de falhas. Em aplicações distribuídas de larga escala, um tipo comum de falha é o particionamento de rede. Não há ferramentas que permitam diretamente a validação ou a verificação do processo de defeito de aplicações distribuídas quando ocorre um particionamento de rede Este trabalho apresenta o estudo de uma abordagem para injeção de falhas que permita o teste de atributos de dependabilidade de aplicações distribuídas de pequena e larga escala implementadas em Java. A abordagem considera a não obrigatoriedade da alteração do código da aplicação sob teste; a emulação de um cenário de falhas múltiplas que ocorrem em diferentes nodos, permitindo o controle centralizado do experimento; a validação de aplicações que executem em sistemas distribuídos de larga escala e consideram um modelo de falhas realista deste tipo de ambiente, incluindo particionamentos de rede. A viabilidade da abordagem proposta é mostrada através do desenvolvimento do protótipo chamado FIONA (Fault Injector Oriented to Network Applications), o qual atualmente injeta falhas em aplicações desenvolvidas sob o protocolo UDP. |
id |
URGS_a38e1f277df24cad50e5f6c45892ba00 |
---|---|
oai_identifier_str |
oai:www.lume.ufrgs.br:10183/5660 |
network_acronym_str |
URGS |
network_name_str |
Biblioteca Digital de Teses e Dissertações da UFRGS |
repository_id_str |
1853 |
spelling |
Jacques-Silva, GabrielaWeber, Taisy Silva2007-06-06T18:48:58Z2005http://hdl.handle.net/10183/5660000473677Uma etapa fundamental no desenvolvimento de sistemas tolerantes a falhas é a fase de validação, onde é verificado se o sistema está reagindo de maneira correta à ocorrência de falhas. Uma das técnicas usadas para validar experimentalmente um sistema é injeção de falhas. O recente uso de sistemas largamente distribuídos para execução dos mais diversos tipos de aplicações, faz com que novas técnicas para validação de mecanismos de tolerância a falhas sejam desenvolvidas considerando este novo cenário. Injeção de falhas no sistema de comunicação do nodo é uma técnica tradicional para a validação de aplicações distribuídas, para forçar a ativação dos mecanismos de detecção e recuperação de erros relacionados à troca de mensagens. A condução de experimentos com injetores de comunicação tradicionais é feita pelo uso do injetor em uma máquina do sistema distribuído. Se o cenário desejado é de múltiplas falhas, o injetor deve ser instanciado independentemente nas n máquinas que as falhas serão injetadas. O controle de cada injetor é individual, o que dificulta a realização do experimento. Esta dificuldade aumenta significativamente se o cenário for um sistema distribuído de larga escala. Outro problema a considerar é a ausência de ferramentas apropriadas para a emulação de determinados cenários de falhas. Em aplicações distribuídas de larga escala, um tipo comum de falha é o particionamento de rede. Não há ferramentas que permitam diretamente a validação ou a verificação do processo de defeito de aplicações distribuídas quando ocorre um particionamento de rede Este trabalho apresenta o estudo de uma abordagem para injeção de falhas que permita o teste de atributos de dependabilidade de aplicações distribuídas de pequena e larga escala implementadas em Java. A abordagem considera a não obrigatoriedade da alteração do código da aplicação sob teste; a emulação de um cenário de falhas múltiplas que ocorrem em diferentes nodos, permitindo o controle centralizado do experimento; a validação de aplicações que executem em sistemas distribuídos de larga escala e consideram um modelo de falhas realista deste tipo de ambiente, incluindo particionamentos de rede. A viabilidade da abordagem proposta é mostrada através do desenvolvimento do protótipo chamado FIONA (Fault Injector Oriented to Network Applications), o qual atualmente injeta falhas em aplicações desenvolvidas sob o protocolo UDP.application/pdfporConfiabilidade : ComputadoresTolerancia : FalhasJava (Linguagem de programação)Injecao : FalhasProcessamento distribuídoInjeção distribuída de falhas para validação de dependabilidade de sistemas distribuídos de larga escalainfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisUniversidade Federal do Rio Grande do SulInstituto de InformáticaPrograma de Pós-Graduação em ComputaçãoPorto Alegre, BR-RS2005mestradoinfo:eu-repo/semantics/openAccessreponame:Biblioteca Digital de Teses e Dissertações da UFRGSinstname:Universidade Federal do Rio Grande do Sul (UFRGS)instacron:UFRGSORIGINAL000473677.pdf000473677.pdfTexto completoapplication/pdf416527http://www.lume.ufrgs.br/bitstream/10183/5660/1/000473677.pdff9c98563a6da1ddfa0dd2f55655b0932MD51TEXT000473677.pdf.txt000473677.pdf.txtExtracted Texttext/plain183535http://www.lume.ufrgs.br/bitstream/10183/5660/2/000473677.pdf.txt56d9a9b60f911e7d48167ed52ac563a1MD52THUMBNAIL000473677.pdf.jpg000473677.pdf.jpgGenerated Thumbnailimage/jpeg1017http://www.lume.ufrgs.br/bitstream/10183/5660/3/000473677.pdf.jpgbc7f13c9b254a63c678225fdddc1c2e1MD5310183/56602022-02-22 04:56:58.087684oai:www.lume.ufrgs.br:10183/5660Biblioteca Digital de Teses e Dissertaçõeshttps://lume.ufrgs.br/handle/10183/2PUBhttps://lume.ufrgs.br/oai/requestlume@ufrgs.br||lume@ufrgs.bropendoar:18532022-02-22T07:56:58Biblioteca Digital de Teses e Dissertações da UFRGS - Universidade Federal do Rio Grande do Sul (UFRGS)false |
dc.title.pt_BR.fl_str_mv |
Injeção distribuída de falhas para validação de dependabilidade de sistemas distribuídos de larga escala |
title |
Injeção distribuída de falhas para validação de dependabilidade de sistemas distribuídos de larga escala |
spellingShingle |
Injeção distribuída de falhas para validação de dependabilidade de sistemas distribuídos de larga escala Jacques-Silva, Gabriela Confiabilidade : Computadores Tolerancia : Falhas Java (Linguagem de programação) Injecao : Falhas Processamento distribuído |
title_short |
Injeção distribuída de falhas para validação de dependabilidade de sistemas distribuídos de larga escala |
title_full |
Injeção distribuída de falhas para validação de dependabilidade de sistemas distribuídos de larga escala |
title_fullStr |
Injeção distribuída de falhas para validação de dependabilidade de sistemas distribuídos de larga escala |
title_full_unstemmed |
Injeção distribuída de falhas para validação de dependabilidade de sistemas distribuídos de larga escala |
title_sort |
Injeção distribuída de falhas para validação de dependabilidade de sistemas distribuídos de larga escala |
author |
Jacques-Silva, Gabriela |
author_facet |
Jacques-Silva, Gabriela |
author_role |
author |
dc.contributor.author.fl_str_mv |
Jacques-Silva, Gabriela |
dc.contributor.advisor1.fl_str_mv |
Weber, Taisy Silva |
contributor_str_mv |
Weber, Taisy Silva |
dc.subject.por.fl_str_mv |
Confiabilidade : Computadores Tolerancia : Falhas Java (Linguagem de programação) Injecao : Falhas Processamento distribuído |
topic |
Confiabilidade : Computadores Tolerancia : Falhas Java (Linguagem de programação) Injecao : Falhas Processamento distribuído |
description |
Uma etapa fundamental no desenvolvimento de sistemas tolerantes a falhas é a fase de validação, onde é verificado se o sistema está reagindo de maneira correta à ocorrência de falhas. Uma das técnicas usadas para validar experimentalmente um sistema é injeção de falhas. O recente uso de sistemas largamente distribuídos para execução dos mais diversos tipos de aplicações, faz com que novas técnicas para validação de mecanismos de tolerância a falhas sejam desenvolvidas considerando este novo cenário. Injeção de falhas no sistema de comunicação do nodo é uma técnica tradicional para a validação de aplicações distribuídas, para forçar a ativação dos mecanismos de detecção e recuperação de erros relacionados à troca de mensagens. A condução de experimentos com injetores de comunicação tradicionais é feita pelo uso do injetor em uma máquina do sistema distribuído. Se o cenário desejado é de múltiplas falhas, o injetor deve ser instanciado independentemente nas n máquinas que as falhas serão injetadas. O controle de cada injetor é individual, o que dificulta a realização do experimento. Esta dificuldade aumenta significativamente se o cenário for um sistema distribuído de larga escala. Outro problema a considerar é a ausência de ferramentas apropriadas para a emulação de determinados cenários de falhas. Em aplicações distribuídas de larga escala, um tipo comum de falha é o particionamento de rede. Não há ferramentas que permitam diretamente a validação ou a verificação do processo de defeito de aplicações distribuídas quando ocorre um particionamento de rede Este trabalho apresenta o estudo de uma abordagem para injeção de falhas que permita o teste de atributos de dependabilidade de aplicações distribuídas de pequena e larga escala implementadas em Java. A abordagem considera a não obrigatoriedade da alteração do código da aplicação sob teste; a emulação de um cenário de falhas múltiplas que ocorrem em diferentes nodos, permitindo o controle centralizado do experimento; a validação de aplicações que executem em sistemas distribuídos de larga escala e consideram um modelo de falhas realista deste tipo de ambiente, incluindo particionamentos de rede. A viabilidade da abordagem proposta é mostrada através do desenvolvimento do protótipo chamado FIONA (Fault Injector Oriented to Network Applications), o qual atualmente injeta falhas em aplicações desenvolvidas sob o protocolo UDP. |
publishDate |
2005 |
dc.date.issued.fl_str_mv |
2005 |
dc.date.accessioned.fl_str_mv |
2007-06-06T18:48:58Z |
dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
dc.type.driver.fl_str_mv |
info:eu-repo/semantics/masterThesis |
format |
masterThesis |
status_str |
publishedVersion |
dc.identifier.uri.fl_str_mv |
http://hdl.handle.net/10183/5660 |
dc.identifier.nrb.pt_BR.fl_str_mv |
000473677 |
url |
http://hdl.handle.net/10183/5660 |
identifier_str_mv |
000473677 |
dc.language.iso.fl_str_mv |
por |
language |
por |
dc.rights.driver.fl_str_mv |
info:eu-repo/semantics/openAccess |
eu_rights_str_mv |
openAccess |
dc.format.none.fl_str_mv |
application/pdf |
dc.source.none.fl_str_mv |
reponame:Biblioteca Digital de Teses e Dissertações da UFRGS instname:Universidade Federal do Rio Grande do Sul (UFRGS) instacron:UFRGS |
instname_str |
Universidade Federal do Rio Grande do Sul (UFRGS) |
instacron_str |
UFRGS |
institution |
UFRGS |
reponame_str |
Biblioteca Digital de Teses e Dissertações da UFRGS |
collection |
Biblioteca Digital de Teses e Dissertações da UFRGS |
bitstream.url.fl_str_mv |
http://www.lume.ufrgs.br/bitstream/10183/5660/1/000473677.pdf http://www.lume.ufrgs.br/bitstream/10183/5660/2/000473677.pdf.txt http://www.lume.ufrgs.br/bitstream/10183/5660/3/000473677.pdf.jpg |
bitstream.checksum.fl_str_mv |
f9c98563a6da1ddfa0dd2f55655b0932 56d9a9b60f911e7d48167ed52ac563a1 bc7f13c9b254a63c678225fdddc1c2e1 |
bitstream.checksumAlgorithm.fl_str_mv |
MD5 MD5 MD5 |
repository.name.fl_str_mv |
Biblioteca Digital de Teses e Dissertações da UFRGS - Universidade Federal do Rio Grande do Sul (UFRGS) |
repository.mail.fl_str_mv |
lume@ufrgs.br||lume@ufrgs.br |
_version_ |
1810085055854280704 |