Firmament : um módulo de injeção de falhas de comunicação para linux

A execução de testes é um passo essencial na adoção de novos protocolos de comunicação e sistemas distribuídos. A forma com que estes se comportam na presença de falhas, tão comuns em ambientes geograficamente distribuídos, deve ser conhecida e considerada. Testes sob condições de falha devem ser re...

Full description

Bibliographic Details
Main Author: Drebes, Roberto Jung
Other Authors: Weber, Taisy Silva
Format: Others
Language:Portuguese
Published: 2007
Subjects:
Online Access:http://hdl.handle.net/10183/7196
id ndltd-IBICT-oai-www.lume.ufrgs.br-10183-7196
record_format oai_dc
spelling ndltd-IBICT-oai-www.lume.ufrgs.br-10183-71962019-01-22T01:24:10Z Firmament : um módulo de injeção de falhas de comunicação para linux Drebes, Roberto Jung Weber, Taisy Silva Injecao : Falhas Redes : Computadores Seguranca : Redes : Computadores A execução de testes é um passo essencial na adoção de novos protocolos de comunicação e sistemas distribuídos. A forma com que estes se comportam na presença de falhas, tão comuns em ambientes geograficamente distribuídos, deve ser conhecida e considerada. Testes sob condições de falha devem ser realizados e as implementações devem trabalhar dentro de sua especificação nestas condições, garantindo explicitamente o funcionamento dos seus mecanismos de detecção e recuperação de erros. Para a realização de tais testes, uma técnica poderosa é a injeção de falhas. Ferramentas de injeção de falhas permitem ao projetista ou engenheiro de testes medir a eficiência dos mecanismos de um sistema antes que o mesmo seja colocado em operação efetiva. Este trabalho apresenta o projeto, desenvolvimento e teste do injetor de falhas FIRMAMENT. Esta ferramenta executa, dentro do núcleo do sistema operacional, microprogramas, ou faultlets, sobre cada mensagem processada para a emulação de situações de falha de comunicação, utilizando uma abordagem de scripts. A ferramenta é implementada como um módulo de núcleo do sistema operacional Linux, tendo acesso total aos fluxos de entrada e saída de pacotes de forma limpa e não intrusiva, permitindo o teste de sistemas baseados nos protocolos IPv4 e IPv6. Seu desempenho é significativo, já que a ferramenta evita que os mecanismos de injeção de falhas sejam invocados nos fluxos que não sejam de interesse aos testes, bem como dispensa a cópia de dados dos pacotes de comunicação a serem inspecionados e manipulados. A aplicabilidade da ferramenta, dada pela sua facilidade de integração a um ambiente de produção, é conseqüência de sua disponibilidade como um módulo de núcleo, podendo ser carregada como um plugin em um núcleo não modificado. As instruções por FIRMAMENT suportadas lhe dão alto poder de expressão dos cenários de falhas. Estas instruções permitem a inspeção e seleção de mensagens de forma determinística ou estatística. Além disso, fornecem diversas ações a serem realizadas sobre os pacotes de comunicação e sobre as variáveis internas do injetor, fazendo-o imitar o comportamento de falhas reais, como descarte e duplicação de mensagens, atraso na sua entrega e modificação de seu conteúdo. Estas características tornam a ferramenta apropriada para a realização de experimentos sobre protocolos e sistemas distribuídos. 2007-06-06T19:04:24Z 2005 info:eu-repo/semantics/publishedVersion info:eu-repo/semantics/masterThesis http://hdl.handle.net/10183/7196 000496578 por info:eu-repo/semantics/openAccess application/pdf reponame:Biblioteca Digital de Teses e Dissertações da UFRGS instname:Universidade Federal do Rio Grande do Sul instacron:UFRGS
collection NDLTD
language Portuguese
format Others
sources NDLTD
topic Injecao : Falhas
Redes : Computadores
Seguranca : Redes : Computadores
spellingShingle Injecao : Falhas
Redes : Computadores
Seguranca : Redes : Computadores
Drebes, Roberto Jung
Firmament : um módulo de injeção de falhas de comunicação para linux
description A execução de testes é um passo essencial na adoção de novos protocolos de comunicação e sistemas distribuídos. A forma com que estes se comportam na presença de falhas, tão comuns em ambientes geograficamente distribuídos, deve ser conhecida e considerada. Testes sob condições de falha devem ser realizados e as implementações devem trabalhar dentro de sua especificação nestas condições, garantindo explicitamente o funcionamento dos seus mecanismos de detecção e recuperação de erros. Para a realização de tais testes, uma técnica poderosa é a injeção de falhas. Ferramentas de injeção de falhas permitem ao projetista ou engenheiro de testes medir a eficiência dos mecanismos de um sistema antes que o mesmo seja colocado em operação efetiva. Este trabalho apresenta o projeto, desenvolvimento e teste do injetor de falhas FIRMAMENT. Esta ferramenta executa, dentro do núcleo do sistema operacional, microprogramas, ou faultlets, sobre cada mensagem processada para a emulação de situações de falha de comunicação, utilizando uma abordagem de scripts. A ferramenta é implementada como um módulo de núcleo do sistema operacional Linux, tendo acesso total aos fluxos de entrada e saída de pacotes de forma limpa e não intrusiva, permitindo o teste de sistemas baseados nos protocolos IPv4 e IPv6. Seu desempenho é significativo, já que a ferramenta evita que os mecanismos de injeção de falhas sejam invocados nos fluxos que não sejam de interesse aos testes, bem como dispensa a cópia de dados dos pacotes de comunicação a serem inspecionados e manipulados. A aplicabilidade da ferramenta, dada pela sua facilidade de integração a um ambiente de produção, é conseqüência de sua disponibilidade como um módulo de núcleo, podendo ser carregada como um plugin em um núcleo não modificado. As instruções por FIRMAMENT suportadas lhe dão alto poder de expressão dos cenários de falhas. Estas instruções permitem a inspeção e seleção de mensagens de forma determinística ou estatística. Além disso, fornecem diversas ações a serem realizadas sobre os pacotes de comunicação e sobre as variáveis internas do injetor, fazendo-o imitar o comportamento de falhas reais, como descarte e duplicação de mensagens, atraso na sua entrega e modificação de seu conteúdo. Estas características tornam a ferramenta apropriada para a realização de experimentos sobre protocolos e sistemas distribuídos.
author2 Weber, Taisy Silva
author_facet Weber, Taisy Silva
Drebes, Roberto Jung
author Drebes, Roberto Jung
author_sort Drebes, Roberto Jung
title Firmament : um módulo de injeção de falhas de comunicação para linux
title_short Firmament : um módulo de injeção de falhas de comunicação para linux
title_full Firmament : um módulo de injeção de falhas de comunicação para linux
title_fullStr Firmament : um módulo de injeção de falhas de comunicação para linux
title_full_unstemmed Firmament : um módulo de injeção de falhas de comunicação para linux
title_sort firmament : um módulo de injeção de falhas de comunicação para linux
publishDate 2007
url http://hdl.handle.net/10183/7196
work_keys_str_mv AT drebesrobertojung firmamentummodulodeinjecaodefalhasdecomunicacaoparalinux
_version_ 1718935610861813760