Mudanças entre as edições de "Criação de interface web para o Netkit"

De MediaWiki do Campus São José
Ir para: navegação, pesquisa
 
Linha 6: Linha 6:
 
Este TCC propõe criar uma interface web para execução remota de instâncias do Netkit. O trabalho envolve o controle e visualização de experimentos usando um navegador. Isso implica basicamente:
 
Este TCC propõe criar uma interface web para execução remota de instâncias do Netkit. O trabalho envolve o controle e visualização de experimentos usando um navegador. Isso implica basicamente:
 
# Desenvolver uma aplicação web a ser executada em um servidor, a qual deve ser acessada pelos navegadores. Essa aplicação é responsável por i) fornecer a interface web a ser executada nos navegadores, e ii) traduzir as ações enviadas a partir do navegador para chamadas ao controlador de instâncias do Netkit por meio da API RESTful (ver [[Cria%C3%A7%C3%A3o_de_uma_infraestrutura_para_execu%C3%A7%C3%A3o_remota_do_Netkit|TCC do Ricardo Martins]]).
 
# Desenvolver uma aplicação web a ser executada em um servidor, a qual deve ser acessada pelos navegadores. Essa aplicação é responsável por i) fornecer a interface web a ser executada nos navegadores, e ii) traduzir as ações enviadas a partir do navegador para chamadas ao controlador de instâncias do Netkit por meio da API RESTful (ver [[Cria%C3%A7%C3%A3o_de_uma_infraestrutura_para_execu%C3%A7%C3%A3o_remota_do_Netkit|TCC do Ricardo Martins]]).
# Usar [http://en.wikipedia.org/wiki/Ajax_%28programming%29 Ajax] para implementar a interface visível no navegador. Essa interface deve oferecer os widgets (elementos gráficos) para controle de instâncias, e o terminal para acesso às máquinas virtuais do experimento em execução. Esse terminal deve ser funcionalmente similar a um terminal local (ex: gnome-terminal ou xterm).
+
# Usar [http://en.wikipedia.org/wiki/Ajax_%28programming%29 Ajax] para implementar a interface visível no navegador. Essa interface deve oferecer os widgets (elementos gráficos) para controle de instâncias, e o terminal para acesso às máquinas virtuais do experimento em execução. Esse terminal deve ser funcionalmente similar a um terminal local (similar ao projeto [https://github.com/shellinabox/shellinabox shellinabox]).
  
 
= Cronograma =
 
= Cronograma =

Edição atual tal como às 15h43min de 23 de fevereiro de 2018

Resumo

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.


Este TCC propõe criar uma interface web para execução remota de instâncias do Netkit. O trabalho envolve o controle e visualização de experimentos usando um navegador. Isso implica basicamente:

  1. Desenvolver uma aplicação web a ser executada em um servidor, a qual deve ser acessada pelos navegadores. Essa aplicação é responsável por i) fornecer a interface web a ser executada nos navegadores, e ii) traduzir as ações enviadas a partir do navegador para chamadas ao controlador de instâncias do Netkit por meio da API RESTful (ver TCC do Ricardo Martins).
  2. Usar Ajax para implementar a interface visível no navegador. Essa interface deve oferecer os widgets (elementos gráficos) para controle de instâncias, e o terminal para acesso às máquinas virtuais do experimento em execução. Esse terminal deve ser funcionalmente similar a um terminal local (similar ao projeto shellinabox).

Cronograma

Bibliografia