Criação de interface web para o Netkit
Resumo estendido
O Netkit2 é um aplicativo que possibilita criar e realizar experimentos com redes de computadores virtuais. Essas redes podem ser compostas de computadores, switches ethernet e roteadores, os quais são implementados com máquinas virtuais Linux. As funcionalidades de rede existentes no Linux, assim como os aplicativos de rede disponíveis nessa plataforma, podem ser utilizadas nos experimentos criados no Netkit2. Com isso, o Netkit2 se apresenta como um laboratório virtual criado para facilitar o estudo sobre redes de computadores.
Com a atual maneira de se utilizar a ferramenta Netkit2 tem a necessidade de estar utilizando sistema operacional Linux, e ter a ferramenta instalada, fazendo com que muitas vezes dificulte o usuário utilizar tal ferramenta. Em outros sistemas operacionais não é possível usar o Netkit2 diretamente. Como a ferramenta é um software que necessita de instalação na máquina local, o usuário se limita para dar continuidade ao experimento, pois todos os arquivos de configuração, estão somente naquela máquina. Tanto a ferramenta original Netkit quanto a ferramenta na qual o trabalho se baseia que é a Netkit2 são ferramentas de uso restrito para Linux, o que dificulta mais ainda a continuidade do experimento pois não são todos os lugares que você consegue ter acesso a uma máquina Linux.
Uma possível solução para superar as limitações é executar o Netkit2 remotamente em um ou mais servidores de aplicação. Desta maneira você conseguiria utilizar o Netkit2 em outros sistemas operacionais e desta maneira não precisando amarrar a ferramenta com o sistema operacional. Com o acesso remoto as informações não serão armazenadas localmente, pois nenhuma das informações será processada localmente, desta maneira resolveria o problema da continuidade dos experimentos iniciados em uma máquina local. Um outro uso para o Netkit2 seria na utilização de aulas pois conseguiria ter um acesso mais prático aos arquivos de configuração dos alunos, os professores poderiam estar disponibilizando alguns tipos de laboratórios e experimentos, de maneira mais pratica.
Atualmente foi estudada e desenvolvida uma infraestrutura para rodar em um servidor de aplicações, a qual foi o tema do TCC de Ricardo Martins (Criação de uma infraestrutura para execução remota do Netkit2), defendido no final de 2014. Esse trabalho propôs "uma extensão para o Netkit2 capaz de executar, controlar e oferecer uma interface de acesso remoto para experimentos com redes de computadores virtuais, denominadas instâncias do Netkit", chamada de controlador de instâncias. Esse controlador tornou possível executar remotamente experimentos do Netkit2, visualizando-os como se estivessem sendo executados localmente. A interface de acesso ao controlador foi especificada como um serviço web no estilo REST, de forma que clientes interajam com o controlador por meio de requisições HTTP.
Baseado no trabalho do Ricardo e na interface RESTful, o objetivo deste trabalho é desenvolver uma interface web para acesso ao controlador de instâncias. Essa interface deve possibilitar o uso de um navegador web para enviar comandos ao controlador de instâncias, e acessar os terminais das máquinas virtuais que compõem uma rede virtual do Netkit2. Essa interface deve oferecer os mesmos recursos gráficos que o Netkit2 possui localmente, ou seja é necessário que possua além do terminal, widgets e apresentação da topologia da rede, reiniciar o laboratório dentre outras funções mais. Por fim, a interface web deve envolver tecnologias Ajax(Asynchronous Javascript and XML) e HTML5(HyperText Markup Language 5).
Ao concluir o trabalho se espera ter uma aplicação web com que seja possível utilização em qualquer tipo de navegador. Após todo o desenvolvimento do trabalho será possível realizar os experimentos através da ferramenta Netkit2 sem a instalação de seu software local, podendo assim ser utilizado em qualquer lugar e em qualquer sistema operacional.
Resumo original |
---|
O Netkit é uma ferramenta de experimentação com redes compostas por máquinas virtuais UML – User Mode Linux. Atualmente, a execução de uma rede virtual com o Netkit em um determinado computador implica a instalação do respectivo software. Existe um projeto para que a execução seja realizada em um servidor de aplicação, ou mesmo em nuvem, sendo o controle e visualização feitos em um computador via web. Isso evita a necessidade de instalação de software do Netkit e abre diversas possibilidade para os experimentos (ex: catálogo de experimentos, interligação de diferentes experimentos, criação de uma Internet virtual). A especificação e implementação da infraestrutura para execução remota de experimentos foi desenvolvida no TCC de Ricardo Martins. O acesso a essa infraestrutura foi especificado como um Web Service, por meio de uma API RESTful. Desta forma, falta implementar a interface web para o acesso a essa infraestrutura e execução dos experimentos.
|
Cronograma
Referências bibliográficas
GNOME-NETKIT. Gnome-Netkit. Brasil, 2014. Acessado em 24-04-2015. Disponível em:<http://wiki.sj.ifsc.edu.br/index.php/Netkit2>
NETKIT. Netkit. Itália, 2011. Acessado em 24-04-2015. Disponível em:<http://wiki.netkit.org/index.php>.
WEBBER, J.; PARASTATIDIS, S.; ROBINSON, I.REST In Practice. EUA: O’Reilly Media, Inc., 2010. 16–20 p.