Propostas com aluno atribuído (auto-proposta)

DEI - FCTUC
Gerado a 2024-11-24 15:15:37 (Europe/Lisbon).
Voltar

Titulo Estágio

Avaliação de robustez em sistemas virtualizados

Áreas de especialidade

Engenharia de Software

Local do Estágio

SSE-CISUC

Enquadramento

A virtualização é uma das tecnologias que fez a “cloud” possível porque permite a criação de instâncias virtuais de dispositivos de rede, armazenamento ou processamento, entre outros. Um sistema virtualizado é governado por um hypervisor e os recursos são partilhados por várias máquinas virtuais. Apesar dos benefícios que introduz, a virtualização também traz alguns novos desafios tais como robustez e segurança.
A paravirtualização é hoje em dia uma alternativa à virtualização completa (ou emulação) e permite optimizar a performance de componentes das máquinas virtuais. Para tal, o hypervisor providencia uma interface de hypercalls que as máquinas virtuais podem usar. Uma hypercall está para o hypervisor como uma system call está para um sistema operativo. Assim, para garantir a confiabilidade da infraestrutura, é necessário que esta interface seja robusta e segura.

Objetivo

A avaliação da robustez deste tipo de interfaces é pois de extrema importância. O objectivo deste trabalho é utilizar testes de robustez para avaliar a robustez da interface de hypercalls em ambientes virtualizados. Técnicas de testes de robustez mostraram ao longo da história ser uma forma eficaz de descobrir problemas de robustez em diversos sistemas, problemas esses que geralmente representam graves bugs.
Para tal é necessário, em primeiro lugar, efectuar estudos experimentais que focam na avaliação da robustez da interface. Como o ambiente é diferente de outros testados no passado, novos desafios têm de ser ultrapassados para a condução destes experimentos.
É também necessário desenvolver ferramentas que permitam a automatização da geração e execução dos testes, de forma a ser mais fácil e rápido aplicá-los. Estas ferramentas têm especial importância visto que podem ser usadas no futuro para avaliação de diferentes versões dos ambientes em teste e também suportarem outros tipos de testes.

Plano de Trabalhos - Semestre 1

T1. [01/09/2015 a 31/10/2015] Estudo do estado da arte
Estudar trabalhos com testes de robustez em outros domínios com sistemas operativos, microkernels, middleware, web services, etc.
T2. [01/11/2015 a 15/11/2015] Estudo da estrutura da interface de hypercalls
Análise detalhada da interface de hypercalls de forma a perceber as funções incluídas e para no futuro configurar a geração de testes de robustez.
T3. [15/11/2015 a 31/12/2015] Definição de uma metodologia de testes e regras para o domínio
Baseado na análise anterior, é necessário definir uma metodologia de avaliação baseada em testes. Isto inclui definir as regras a serem aplicadas em cada parâmetro de cada função para gerar os respectivos testes de robustez.
T4. [01/01/2016 a 31/01/2016] Escrita do Relatório Intermédio

Plano de Trabalhos - Semestre 2

T5. [01/02/2016 a 28/02/2016] Automatização dos testes/desenvolvimento de ferramentas
Desenvolvimento de ferramentas que permitam a automatização da geração e execução dos testes.
T6. [01/03/2016 a 30/03/2016] Avaliação experimental da robustez de um ambiente virtualizado
Execução de uma campanha experimental para avaliar a robustez da interface de hypercalls num ambiente virtualizado.
T7. [01/04/2016 a 30/04/2016] Repetição dos experimentos para novas versões do mesmo ambiente
Execução de novas campanhas experimentais para perceber como evoluiu o ambiente em estudo ao longo das suas versões.
T8. [01/04/2016 a 31/05/2016] Escrita de um artigo
T9. [01/03/2016 a 31/07/2016] Escrita da Tese

Condições

Os trabalhos serão realizados nos laboratórios do Grupo de Engenharia de Software e Sistemas do CISUC. Um local de trabalho será fornecido assim como os recursos computacionais necessários.

Observações

Sem observações.

Orientador

Nuno Antunes
nmsa@dei.uc.pt 📩