Mudanças entre as edições de "Criação de uma infraestrutura para execução remota do Netkit"

De MediaWiki do Campus São José
Ir para navegação Ir para pesquisar
Linha 1: Linha 1:
= Introdução =
+
Autor: Rafael da Silva Pereira
O Netkit é um ambiente para experimentos com redes de computadores desenvolvido na Universidade de Roma, na Itália. Com ele torna-se possível realizar experimentos sobre configuração básica de rede, roteamento, criação de infraestrutura WAN com MPLS, além de dispor de diversos serviços de rede (DNS, WWW, LDAP, e outros). Ele se compõe de máquinas virtuais Linux (implementadas com kernel Linux UML – User Mode Linux), que funcionam como roteadores ou computadores, e switches Ethernet virtuais (UML switch) para interligar as máquinas virtuais. Para todos os efeitos, cada máquina virtual funciona como se fosse um computador real, possuindo uma ou mais interfaces de rede. Com esses recursos é possível criar redes de configurações arbitrárias para estudar protocolos de comunicação e serviços de rede.
 
  
A versão do Netkit apresentada neste artigo é fruto de modificações realizadas pelo Núcleo de Telecomunicações do IF-SC (câmpus São José). Ela possui muitas diferenças em relação ao Netkit original dentre as principais diferenças pode-se citar a implementação de uma interface gráfica para a execução de experimentos, chamada Gnome-Netkit. Esse aplicativo concentra as telas de terminal das máquinas virtuais e provê diversas funções auxiliares para ajudar na realização dos experimentos.
+
Resumo:
  
= Proposta =
+
O Netkit2 ´e um ambiente de criac¸ ˜ao de redes virtuais criado para facilitar a realizac¸ ˜ao de
A maioria dos alunos que precisam utilizar o Gnome-Netkit, precisam instalar o Linux e, muitas vezes, somente instalam para essa finalidade. O objetivo é fazer uma aplicação web do Gnome-Netkit para que o usuário possa, de qualquer sistema operacional, realizar seu trabalho. Funciona da seguinte maneira: através de uma conexão web remota, o usuário se conectará em um servidor onde está instalado o Gnome-Netkit. Cada usuário terá uma pasta pessoal onde poderá armazenar seus experimentos, se desejar, ou simplesmente executá-lo.
+
experimentos com redes virtuais. O Netkit2 se apresenta como um programa que, para ser utilizado,
 +
deve ser instalado em um computador com sistema operacional Linux. Este trabalho
 +
prop˜oe a elaborac¸ ˜ao de uma infraestrutura para a execuc¸ ˜ao remota do Netkit2 em um ou mais
 +
servidores, o que deve tornar poss´ıvel a criac¸ ˜ao de um laborat´orio virtual de redes de computadores.
 +
Para isso, prop˜oe-se uma extens˜ao para o Netkit2 capaz de executar, controlar e oferecer
 +
uma interface de acesso remoto para experimentos com redes de computadores virtuais, denominadas
 +
instˆancias do Netkit.
 +
Do ponto de vista do usu´ario, o sistema proposto se apresenta como um servic¸o web, o qual
 +
segue o estilo de arquitetura conhecido como Representational State Transfer (REST). Assim,
 +
o sistema ´e modelado como um conjunto de recursos, tais como redes virtuais, instˆancias e
 +
m´aquinas virtuais, dentre outros, os quais podem se acessados, criados, removidos e modificados
 +
por meio de operac¸ ˜oes usando o protocolo Hypertext Transfer Protocol (HTTP). Isso
 +
deve possibilitar que se criem interfaces web para acesso ao sistema, o que evita a instalac¸ ˜ao de
 +
software nos dispositivos dos usu´arios, as quais, no momento, n˜ao s˜ao objeto de estudo neste
 +
trabalho.
 +
Para fins de demonstrac¸ ˜ao, desenvolveu-se um prot´otipo do sistema capaz de interpretar e
 +
executar um subconjunto das operac¸ ˜oes da interface de acesso especificada. Esse prot´otipo foi
 +
capaz de interpretar comandos para publicar configurac¸ ˜oes de experimentos no servidor, iniciar
 +
e terminar instˆancias de redes virtuais do Netkit2, al´em de interagir com essas instˆancias.
  
Na infraestrutura a ser criada, o que nos interessa é uma forma prática de executar instâncias do Netkit em um servidor de aplicação. Melhor ainda se houver um conjunto de tais servidores, e a instância puder ser executada em qualquer deles (ex: laboratórios de ensino ociosos). Mas fazer os softwares necessários para identificar um servidor de aplicação, executar lá a instância, monitorar sua execução, além de outros detalhes menores, é trabalhoso. Sendo essa uma necessidade comum a muitos outros projetos, e já de longa data, foram propostas diferentes formas de auxiliar (padronizar) a criação de tais infraestruturas. Para nosso trabalho entendo que duas delas podem ser adequadas:
 
  
*Grid: um conjunto variável de computadores que podem ser usados para executar diferentes tarefas por demanda.
+
Abstract:
*Nuvem: também um conjunto possivelmente variável de computadores para realizar tarefas por demanda, porém com uma interface que delega ao usuário da nuvem o acesso transparente e o gerenciamento dos recursos da nuvem a ele concedidos. Quer dizer, o modelo em nuvem busca automatizar e facilitar o uso de seus recursos pelos clientes da infraestrutura.
 
  
= Objetivo =
+
The Netkit2 is a virtual environment for creating networks made to facilitate the realization
Usar o aplicativo Gnome-Netkit remotamente e permitir que qualquer usuário possa utilizar qualquer sistema operacional para executar o aplicativo.
+
of experiments with virtual networks. The Netkit2 is a program that should be installed on a
 +
computer with Linux operating system to be used. This paper proposes the development of an
 +
remote infrastructure for execution of Netkit2 on one or more servers, which should make it
 +
possible to create a virtual laboratory of computer networks. For this propose, will be create
 +
an extension to the Netkit2 to able execute, control and provide a remote access interface for
 +
experiments with networks of virtual machines, called Netkit instances.
 +
From the user point of view, the proposed system is presented as a web service, which
 +
follows the architectural style known as REST. Thus, the system is modeled as a set of resources
 +
such as virtual networking, forums and virtual machines, among others, which can be accessed,
 +
created, removed and modified by a process using HTTP protocol. This should enable you to
 +
create web interfaces for accessing the system, which prevents the installation of software on
 +
the devices of users is not necessary, which are not object of study in this work.
 +
For demonstration purposes, in this paper was developed a prototype system capable of
 +
interpreting and executing a subset of the specified access interface operations. This prototype
 +
was able to interpret commands to publish experiments settings on the server, start and stop
 +
instances of virtual networks Netkit2, and interact with those instances.
  
= Cronograma =
 
{| border="1" cellpadding="5" cellspacing="0" style="text-align: center;"
 
! colspan="5" style="background: #ffdead;" | Semestre 2013-2
 
|-
 
! rowspan="2" style="background: #efefef;" | Etapas
 
! colspan="4" style="background: #efefef;" | Mês
 
|-
 
! style="background: #efefef;" | Outubro
 
! style="background: #efefef;" | Novembro
 
! style="background: #efefef;" | Dezembro
 
|-
 
| Delimitação do tema de trabalho
 
| X
 
|
 
|
 
|-
 
| Pesquisa bibliográfica
 
| X
 
| X
 
|
 
|-
 
| Elaboração do Documento de Avaliação Final
 
|
 
| X
 
| X
 
|-
 
| Desenvolvimento do projeto
 
|
 
| X
 
| X
 
|-
 
|-
 
{| border="0"
 
|}
 
  
= Referências Bibliográficas =
+
Palavras chave: Servic¸os web, Netkit2, REST, redes virtuais.
  
Sobre o Netkit: http://wiki.netkit.org/index.php/Main_Page
 
  
Sobre o Grid: http://www.globus.org/grid_software/ecology.php
+
== Arquivos ==
  
Sobre a nuvem: http://csrc.nist.gov/publications/nistpubs/800-145/SP800-145.pdf
+
'''Monografia:''' [[Media:TCC_Ricardo Martins.pdf|Monografia.pdf]]

Edição das 18h12min de 5 de março de 2015

Autor: Rafael da Silva Pereira

Resumo:

O Netkit2 ´e um ambiente de criac¸ ˜ao de redes virtuais criado para facilitar a realizac¸ ˜ao de experimentos com redes virtuais. O Netkit2 se apresenta como um programa que, para ser utilizado, deve ser instalado em um computador com sistema operacional Linux. Este trabalho prop˜oe a elaborac¸ ˜ao de uma infraestrutura para a execuc¸ ˜ao remota do Netkit2 em um ou mais servidores, o que deve tornar poss´ıvel a criac¸ ˜ao de um laborat´orio virtual de redes de computadores. Para isso, prop˜oe-se uma extens˜ao para o Netkit2 capaz de executar, controlar e oferecer uma interface de acesso remoto para experimentos com redes de computadores virtuais, denominadas instˆancias do Netkit. Do ponto de vista do usu´ario, o sistema proposto se apresenta como um servic¸o web, o qual segue o estilo de arquitetura conhecido como Representational State Transfer (REST). Assim, o sistema ´e modelado como um conjunto de recursos, tais como redes virtuais, instˆancias e m´aquinas virtuais, dentre outros, os quais podem se acessados, criados, removidos e modificados por meio de operac¸ ˜oes usando o protocolo Hypertext Transfer Protocol (HTTP). Isso deve possibilitar que se criem interfaces web para acesso ao sistema, o que evita a instalac¸ ˜ao de software nos dispositivos dos usu´arios, as quais, no momento, n˜ao s˜ao objeto de estudo neste trabalho. Para fins de demonstrac¸ ˜ao, desenvolveu-se um prot´otipo do sistema capaz de interpretar e executar um subconjunto das operac¸ ˜oes da interface de acesso especificada. Esse prot´otipo foi capaz de interpretar comandos para publicar configurac¸ ˜oes de experimentos no servidor, iniciar e terminar instˆancias de redes virtuais do Netkit2, al´em de interagir com essas instˆancias.


Abstract:

The Netkit2 is a virtual environment for creating networks made to facilitate the realization of experiments with virtual networks. The Netkit2 is a program that should be installed on a computer with Linux operating system to be used. This paper proposes the development of an remote infrastructure for execution of Netkit2 on one or more servers, which should make it possible to create a virtual laboratory of computer networks. For this propose, will be create an extension to the Netkit2 to able execute, control and provide a remote access interface for experiments with networks of virtual machines, called Netkit instances. From the user point of view, the proposed system is presented as a web service, which follows the architectural style known as REST. Thus, the system is modeled as a set of resources such as virtual networking, forums and virtual machines, among others, which can be accessed, created, removed and modified by a process using HTTP protocol. This should enable you to create web interfaces for accessing the system, which prevents the installation of software on the devices of users is not necessary, which are not object of study in this work. For demonstration purposes, in this paper was developed a prototype system capable of interpreting and executing a subset of the specified access interface operations. This prototype was able to interpret commands to publish experiments settings on the server, start and stop instances of virtual networks Netkit2, and interact with those instances.


Palavras chave: Servic¸os web, Netkit2, REST, redes virtuais.


Arquivos

Monografia: Monografia.pdf