tutorial re decomp 1

Upload: djnsilva-silva

Post on 03-Mar-2018

235 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/26/2019 Tutorial Re Decomp 1

    1/45

    Redes de Computadores I: Arquitetura para Laboratrios Hbridos com Acesso Remoto

    O aumento exponencial do poder de processamento das mquinas aliado ao surgimento de novos padres eprotocolos para a transmisso de dados permitiram a construo de redes de computadores mais velozes,mais confiveis, e mais complexas. Com a crescente demanda por largura de banda, novas tecnologias socriadas cada vez mais rapidamente, aumentando a complexidade da infra-estrutura e, consequentemente, anecessidade de profissionais melhor preparados, capazes de suportar todas as nuances tecnolgicas desteambiente. Este fato refora a importncia de se formar tcnicos, engenheiros e analistas de redes decomputadores cada vez mais qualificados, que possam ser rapidamente inseridos no contexto prtico dotrabalho com o mnimo de treinamento adicional. Neste sentido, aulas laboratoriais podem prover estaexperincia prtica aos alunos, melhor preparando-os para as exigncias do mercado de trabalho.Esta srie de tutoriais apresenta uma arquitetura que permita a construo de laboratrios de redes decomputadores que possam ser acessados a qualquer hora e de qualquer lugar e a um custo de estruturaoreduzido, permitindo que mais estudantes coloquem em prtica parte das teorias vistas em sala de aula. Isso alcanado por meio de uma arquitetura hbrida e distribuda, que implica na combinao de dispositivosreais e virtuais em um mesmo ambiente e sugere a utilizao de computadores geograficamente dispersospara emulao de novos dispositivos de rede, posteriormente incorporados infra-estrutura do laboratrio.Os tutoriais foram preparados a partir do trabalho de concluso de curso Uma Arquitetura para aConstruo de Laboratrios Hbridos de Redes de Computadores Remotamente Acessveis, elaboradopelo autor, apresentado ao Instituto de Pesquisas Tecnolgicas do Estado de So Paulo IPT, comorequisito parcial para a obteno do ttulo de Mestre em Engenharia da Computao. Foi orientador dotrabalho o Prof. Dr. Denis Gabos.Este tutorial parte I aborda o estado da arte, ou seja, uma investigao cientfica sobre as teorias, tecnologiase principais trabalhos relacionados ao tema proposto. Foram estudados os principais trabalhos publicadossobre laboratrios com acesso remoto, as principais teorias, aplicaes e dados estatsticos sobre ensino adistncia (EAD) e sobre o mtodo assncrono de ensino, buscando o embasamento terico necessrio aodesenvolvimento deste trabalho. A seguir apresenta a arquitetura proposta, detalhando o mtodo como aestrutura deve ser construda e gerenciada, seus requisitos mnimos, funcionalidades bsicas e limitaes.

    Marco Aurlio FilippettiEspecialista em Sistemas Computacionais e Engenharia de Telecom pela Universidade da Califrnia(Berkeley), possuindo os ttulos Cisco CQS Security Specialist, CCIP e CCDP, ITIL Foundations, e Mestreem Engenharia da Computao pelo Instituto de Pesquisas Tecnolgicas de So Paulo (IPT).

    1

  • 7/26/2019 Tutorial Re Decomp 1

    2/45

    Atuou na KPMG, T-Systems do Brasil, AT&T, Vivax e British Telecom.Atualmente Consultor de Tecnologia e Operaes para a Embratel, em Campinas.Mantm tambm um movimentado blog focado nas certificaes Cisco desde setembro de 2007

    (http://blog.ccna.com.br).

    Email: [email protected]

    Categorias:Banda Larga, Infraestrutura para Telecomunicaes, Redes de Dados Wireless

    Nvel:Introdutrio Enfoque:Tcnico

    Durao:15 minutos Publicado em:21/06/2010

    2

  • 7/26/2019 Tutorial Re Decomp 1

    3/45

    Redes de Computadores I: Introduo

    MotivaoNo estudo de redes de computadores, livros e artigos podem fornecer o embasamento terico necessrio,

    contudo, sem a possibilidade de experimentao, muitos dos conceitos passados em sala de aula acabamperecendo na memria dos estudantes. Atividades em laboratrio funcionam como um catalisador deconhecimentos, inserindo os alunos em um ambiente altamente interativo e dinmico, no qual muitos dosconhecimentos adquiridos em teoria podem ser aplicados e os resultados desta prtica, analisados e melhorcompreendidos.Os custos para se construir e manter um laboratrio de redes de computadores que possibilite a aplicao eexperimentao das teorias vistas em sala de aula, para algumas instituies de ensino, so muitas vezeselevados, o que acaba por penalizar um grande nmero de estudantes. Muitos dos cursos oferecidos noabordam adequadamente o aspecto prtico do assunto, pela simples inexistncia de uma infra-estruturaapropriada. Alguns centros de ensino, por exemplo, na tentativa de oferecer uma soluo rpida e de baixo

    custo para este problema, adotam simuladores de rede em software. Os softwares simuladores mais simples,porm, impetram diversas limitaes como a impossibilidade de trabalhar topologias de rede complexas, asimulao deficiente ou o no suporte - de determinados protocolos, e a impossibilidade de aceitarconfiguraes mais avanadas. Neste contexto, protocolos avanados comoMulti-Protocol Label Switching(MPLS),Intermediate System Intermediate System (IS-IS),Internet Protocol Security(IPSec) ouInternetProtocol Version 6 (IPv6) para citar alguns e aplicaes como Dynamic Host Conf iguration Protocol(DHCP), Virtual Private Networks(VPNs) e Domain Name System (DNS) no so suportados, gerandofrustrao entre os alunos e deixando-os sem compreender na prtica muitos conceitos importantesapresentados em sala de aula. Softwares simuladores mais avanados, por sua vez, permitem a simulao decenrios complexos, porm, demandam tempo e um elevado grau de abstrao para a modelagem deambientes funcionais. Em ambos os casos, o senso de realidade por parte do estudante comprometido j

    que os ambientes gerados via softwares de simulao so perceptivelmente artificiais.Hoje, apenas grandes centros educacionais dispem de verba suficiente para arcar com a construo de umlaboratrio fsico de redes de computadores que suporte a aplicao de grande parte das teorias vistas emsalas de aula, mas ainda assim, os alunos precisam estar fisicamente presentes para usufruir desta infra-estrutura em sua totalidade. Isso acaba por excluir a maior parcela dos estudantes do assunto, j que nemtodos dispem de condies para estudar nestes grandes centros, e os que dispem, acabam sendopenalizados por uma limitao de tempo e de espao, j que apenas podem usufruir dos recursos duranteintervalos especficos de tempo, e estando fisicamente presente no local onde o laboratrio se encontra.Ji Hua e Aura Ganz mostraram que possvel disponibilizar o acesso completo infra-estrutura de um

    laboratrio de redes, remotamente. O estudo publicado [HUA, 2003-a] abre um leque de aplicaes paraeste modelo que vai desde a sua adoo em ambientes de ensino a distncia at o compartilhamento dainfra-estrutura entre diversos departamentos dentro de um ambiente contido (por exemplo, uma universidadeou uma empresa), usando o acesso remoto ao laboratrio como uma ferramenta tecnolgica de ensino. Destaforma, o problema logstico e temporal eliminado, j que os alunos poderiam ter acesso ao laboratrioquando e onde desejarem. O modelo compartilhado proposto tambm resulta na reduo de custos, j queestes so rateados entre os usurios da infra-estrutura [DENIZ, 2003] (um nico laboratrio pode ser usadopor dois ou mais departamentos de uma mesma universidade ou, indo ainda mais longe, uma nica estruturapode ser compartilhada por mais de um centro educacional).

    3

  • 7/26/2019 Tutorial Re Decomp 1

    4/45

    Cada vez mais, as instituies de ensino encontram-se pressionadas a incorporar ferramentas tecnolgicascomo meio para enriquecer o contedo de seus cursos e proporcionar uma experincia diferenciada aos seusalunos. Os projetistas desta nova gerao de cursos, todavia, precisam entender a fundo tanto o assunto doscursos quanto as tecnologias existentes de auxlio ao ensino, visando o melhor aproveitamento do meio, dasferramentas e das tcnicas pedaggicas disponveis. Isso no ocorre em muitos casos, nos quais ferramentas

    tecnolgicas so aplicadas sem conhecimento e sem critrio, resultando em pouca ou nenhuma vantagemsobre os cursos convencionais [Steinemann, 2002]. A estruturao de laboratrios remotamente acessveis,por exemplo, implica no somente em sua disponibilidade remota, mas na criao de uma interface quefacilite a interao do aluno com a estrutura, e que permita o desenvolvimento de cursos usando aferramenta como um recurso pedaggico.

    ObjetivosSo objetivos deste trabalho:

    Apresentao de uma arquitetura que oriente a construo de laboratrios de redes de computadores

    que possam ser acessados e manipulados de forma remota, permitindo aos estudantes a realizao deexperimentos a qualquer hora e de qualquer lugar;Construo de um prottipo funcional como prova de conceito, utilizando a arquitetura proposta comobase;Anlise dos resultados da construo e testes do prottipo.

    ContribuioEste trabalho complementa os trabalhos citados apresentando uma arquitetura diferenciada para aconstruo da infra-estrutura de laboratrios de redes de computadores. Esta arquitetura diferenciada nosentido em que prope a integrao do ambiente fsico do laboratrio com um ambiente virtual, ou seja, ainterconexo de roteadores, comutadores (switches) e outros elementos de rede fsicos com um ou maiscomputadores de baixo custo que, devidamente configurados, podem operar replicando fielmente todas ascaractersticas de roteadores ou comutadores reais. Esta abordagem possibilita a expanso da infra-estruturade forma rpida e a um custo reduzido, alm de gerar possibilidades para a construo de um laboratrio deredes no apenas remotamente acessvel e compartilhado, mas tambm fisicamente disperso, por meio dadescentralizao da estrutura. A arquitetura proposta tambm se diferencia das demais ao propor aincorporao de ferramentas de ensaio ao laboratrio, como um simulador de fluxos de dados que permite aobservao do comportamento de uma determinada topologia de rede sob influncia de tipos e volumespr-definidos de dados, em tempo real. Isto permite aos docentes o desenvolvimento de cursos maisdinmicos e cativantes e, ao corpo discente, o contato com um ambiente prtico completo, no qual grandeparte das teorias apresentadas em sala de aula pode ser aplicada de forma bastante direta.

    Metodologia de TrabalhoPara alcanar o objetivo enunciado esta pesquisa foi desenvolvida em trs fases, conforme ilustra a figura 1.

    4

  • 7/26/2019 Tutorial Re Decomp 1

    5/45

    Figura 1: Estrutura geral do Mtodo de Trabalho

    A primeira fase FASE 1- focou na contextualizao do problema e no estudo e investigao cientficadas principais teorias, trabalhos, mtodos e tecnologias relacionados ao tema. Nesta fase procedeu-se abstrao e relacionamento das idias centrais destes estudos e implementaes, culminando na delineaodos objetivos e contribuies.Como este trabalho focou na proposta de uma arquitetura para a construo de um ambiente de usoprimariamente acadmico um laboratrio em um primeiro momento foram examinados trabalhos eteorias relacionados ao tema educao a distncia, j que a arquitetura idealizada poderia ser melhoraproveitada em um ambiente de ensino a distncia em detrimento a um ambiente tradicional de ensino.Considerando-se a natureza remota do acesso ao ambiente proposto, o conceito assncrono de ensino foi

    considerado relevante e includo no processo investigativo. Em seguida, pesquisaram-se as principais teoriase trabalhos cientficos publicados sobre a arquitetura de laboratrios com possibilidade de acesso remoto,visando o entendimento do que j foi realizado sobre este tema, e quais as bases cientficas quefundamentaram estes trabalhos. Por fim, procurou-se relacionar o contedo extrado das investigaesrealizadas ao objetivo deste trabalho, como forma de embas-lo cientificamente e de nortear as atividadespropostas nas fases subseqentes.A segunda fase FASE 2- considerou o problema levantado, os objetivos e a contribuio, detalhados naFASE 1, para ento modelar uma arquitetura hbrida e distribuda para a construo de laboratrios de redesde computadores. Nesta fase foram definidos o escopo, requisitos e limitaes inerentes ao projeto depesquisa. Tambm foram examinadas e definidas as formas de interao com o laboratrio (interface com ousurio), os meios de acesso ao ambiente, os softwares e sistemas operacionais necessrios e a estruturafsica e lgica da arquitetura. A maior parte dos softwares propostos por este trabalho de domnio pblico.Objetivando verificar a funcionalidade, viabilidade e aplicabilidade da arquitetura, um prottipo funcional construdo no item 4 da FASE 2. Para tal, seus principais atributos funcionais e limitaes foram definidos.Os equipamentos necessrios foram especificados e adquiridos, os softwares pertinentes instalados econfigurados, e a estrutura construda e disponibilizada aplicando-se a metodologia proposta no item 3 daFASE 2. Todos os custos e o tempo despendido com a construo do prottipo, os percalos e as conquistasincorridos nesta fase foram, ento, elencados e apresentados.A fase final FASE 3 - consistiu em definir, detalhar e aplicar testes capazes de validar a arquitetura

    5

  • 7/26/2019 Tutorial Re Decomp 1

    6/45

    proposta, por meio do prottipo construdo. Os resultados destes testes serviram de base para a formalizaoda concluso, possveis melhorias e trabalhos futuros.

    Tutoriais

    O tutorial parte I aborda o estado da arte, ou seja, uma investigao cientfica sobre as teorias, tecnologias eprincipais trabalhos relacionados ao tema proposto. Foram estudados os principais trabalhos publicadossobre laboratrios com acesso remoto, as principais teorias, aplicaes e dados estatsticos sobre ensino adistncia (EAD) e sobre o mtodo assncrono de ensino, buscando o embasamento terico necessrio aodesenvolvimento deste trabalho.A seguir apresenta a arquitetura proposta, detalhando o mtodo como a estrutura deve ser construda egerenciada, seus requisitos mnimos, funcionalidades bsicas e limitaes.O tutorial parte II discorrer sobre a construo do prottipo, segundo a arquitetura proposta no tutorialparte I. Sero detalhados os elementos e configuraes utilizados, os custos, as conquistas e os percalos.

    A seguirapresentar os testes realizados com o prottipo e os resultados observados, gerando as conclusessobre a viabilidade e funcionalidade da arquitetura proposta por este trabalho.Finalmente apresentar o desfecho desta pesquisa, as concluses alcanadas e sugestes para trabalhosfuturos.

    6

  • 7/26/2019 Tutorial Re Decomp 1

    7/45

    Redes de Computadores I: Reviso Bibliogrfica

    IntroduoEstudos publicados pela Revista e-LearningBrasil em 2006 [REB06] mostram que os investimentos em

    pesquisa e desenvolvimento de ferramentas que possibilitem o oferecimento de cursos no formato onlineapresentaram crescimento mdio de 65% em 2005. Ainda de acordo com estes estudos, a participao doscursos apoiados por tecnologias (e-learning) continua crescendo ano a ano, com um aumento de 55%registrado em 2005, em comparao ao ano anterior. Isso mostra que, paulatinamente, organizaes vmdirecionando uma significativa parte de seus esforos no oferecimento de cursos no formato online comoestratgia para reduzir custos. Especificamente no caso de instituies de ensino, o crescente investimentoneste tipo de curso visa tambm ampliar a vantagem competitiva por meio do oferecimento de cursos decontedo mais rico, mais dinmicos e comercialmente mais atrativos do que a concorrncia - e expandir oalcance dos cursos para alm de suas fronteiras fsicas, ampliando assim o nmero potencial de estudantes eotimizando o uso dos recursos e da infra-estrutura.

    Esta seo foca o estudo e confrontao de idias e conceitos extrados das principais teorias, trabalhos etecnologias considerados relevantes ao tema proposto, objetivando o embasamento terico necessrio para odesenvolvimento desta pesquisa.

    Trabalhos RelacionadosTrabalhos sobre a laboratrios remotamente acessveis j foram apresentados anteriormente, porm, a maiorparte dos analisados [DENIZ, 2003], [Fjeldly, 2003], [HOON, 1998], [Mendes, 2001], [PROSKE, 2006],[Santos, 1998], [Tsai, 2005], [Varella, 2007] foca na instrumentao remota, ou seja, a manipulao adistncia de dispositivos cientficos bastante especficos. Alguns conceitos e tcnicas propostos nestestrabalhos, entretanto, podem ser direcionados para o tema de laboratrios de redes de computadores com

    possibilidade de acesso remoto, tema este relativamente recente e ainda pouco explorado. Pouco materialsobre o assunto foi efetivamente publicado, sendo [HUA, 2003-a], [HUA, 2003-b], [LIU, 2001],[OLIVEIRA, 2001] os mais relevantes.

    E-learning versus Ensino a distnciaPara este trabalho, importante algum grau de distino entre ensino a distncia e e-learning. [NICHOLS,2003] define ensino a distncia como sendo o processo educacional que ocorre exclusivamente porintermdio da Web, no consistindo, portanto, de nenhum tipo de interao fsica. A Internet, neste caso, o principal meio usado neste tipo de ensino. J e-learning definido como a aplicao de diversasferramentas tecnolgicas no auxlio direto ao processo educacional. Estas ferramentas normalmente so

    baseadas na Web e podem ter carter sncrono ou assncrono [NICHOLS, 2003]. Ou seja, pode-se terensino a distncia sem que este seja classificado como e-learning, e podem-se utilizar ferramentas voltadaspara e-learningfora do contexto de ensino a distncia. Isso fica perceptvel quando se procuram exemplosprticos de um ou de outro.O Telecurso 2000, projeto educacional da Rede Globo de Televiso em conjunto com a Fundao RobertoMarinho, um bom exemplo de educao a distncia sem a aplicao de ferramentas e-learningj que omeio utilizado, neste exemplo, a tele difuso e no a Web. O uso de laboratrios virtuais em salas de aulaconvencionais, por sua vez, seria um exemplo da aplicao de ferramentas e-learning em ambientestradicionais de ensino.

    7

  • 7/26/2019 Tutorial Re Decomp 1

    8/45

    Laboratrios de acesso remoto, portanto, podem ser considerados ferramentas de e-learning, permitindo suaaplicao tanto em ambientes tradicionais de ensino quanto em ambientes de ensino a distncia.

    Aplicao de Ferramentas E-learning na Educao

    O papel da tecnologia na educao sofreu grandes mudanas nos ltimos anos. Antes, a tecnologia eraempregada com o objetivo de promover a interao entre estudante e computador. Hoje, a aplicao datecnologia visa facilitar a comunicao entre estudante e instrutor [Kearsley, 2007].Tradicionalmente, professores e alunos encontram-se em salas de aula para ensinar e aprender. O ensino, emsua forma convencional, possibilita aos professores atividades como discorrer sobre um determinadoassunto, explicar tarefas de laboratrio, responder a questes levantadas pelos alunos, elaborar e passartarefas, conduzir avaliaes, dentre outras. J aos estudantes cabe a participao em um nmero reduzido deatividades, sendo que em grande parte delas, esta participao ocorre passivamente, por exemplo: escutar,tomar notas, seguir instrues, realizar provas, dentre outras [Facemyer, 1997]. Sob este aspecto, pode-se

    dizer que as atividades de ensinar e aprender ocorrem de modo assncrono, ou no-simultneo. Por meio daobservao emprica deste comportamento concluiu-se que papis predominantemente passivos, quandoatribudos aos estudantes, acabam por inibir o processo de aprendizagem tanto dentro quanto fora da sala deaula [Goodlad, 1995, CUBAN, 1996 apudFacemyer, 1997], ou seja, estudantes inseridos neste contextoapresentam maior dificuldade de transformar informao em conhecimento.Com o avano tecnolgico experimentado nos ltimos dez anos, novas formas de ensino so desenvolvidase, cada vez mais, ferramentas tecnolgicas de apoio educao so empregadas com o objetivo de reduzir apassividade na participao dos estudantes [Kickul, 2002]. Estas ferramentas as ferramentas e-learningpodem ter caractersticas sncronas ou assncronas. O glossrio disponibilizado pela American Society forTraining & Development (www.learningcircuits.org/glossary ) define comunicao assncrona como uma

    comunicao bidirecional que ocorre com atraso, permitindo a cada participante interagir quando melhorlhe convier. O mesmo glossrio define comunicao sncrona como sendo uma comunicao bidirecionalque ocorre de forma temporariamente sincronizada. Ambas as definies so relevantes para aconceitualizao dos tipos de ferramentas e-learning. O correio-eletrnico ou uma apresentaodisponibilizada em uma pgina na Web so exemplos de ferramentas e-learningassncronas, j que oprocesso interativo no ocorre em tempo-real. J os chats e as videoconferncias so exemplos deferramentas e-learningsncronas, com a interao entre os participantes ocorrendo em tempo-real.Cursos distintos demandam tipos diferenciados de ferramentas de ensino. Mais importante do que adefinio de qualferramenta deve ser utilizada, entretanto, a definio de comoa ferramenta deve serutilizada [NICHOLS, 2003]. Aulas prticas como laboratrios, por exemplo, tendem a se beneficiar mais do

    uso de ferramentas sncronas, j que este tipo de aula encontra-se inserida em um contexto bastanteinterativo. Isso no significa que apenas um tipo de ferramenta possa ser usado, neste caso. A combinaode ferramentas sncronas e assncronas uma possibilidade que deve ser explorada, muitas vezes produzindoresultados bastante interessantes.Os cursos atualmente disponveis na Webpodem ser classificados em basicamente duas categorias: cursoscom elementos primariamente textuais e estticos, assncronos por definio, e cursos concebidosespecificamente para o ambiente eletrnico. Neste ltimo, texto esttico ainda utilizado para a transmissode informaes, entretanto, o aprendizado tambm ocorre por meio de componentes dinmicos e interativos,conceitualmente sncronos. Ainda hoje, a maior parte dos cursos a distncia oferecidos encontra-se na

    8

  • 7/26/2019 Tutorial Re Decomp 1

    9/45

    primeira categoria [KAPLAN, 2004], uma tendncia que mostra sinais de reverso ao passo em que tcnicaspedaggicas e a prpria tecnologia evolui.Em concluso, o objetivo da implementao de ferramentas e-learning facilitar o desenvolvimentoeducacional do estudante, porm, o uso destas ferramentas por professores e estudantes deve estar alinhado

    com o objetivo do curso [Kickul, 2002]. A correta aplicao de ferramentas e-learning na educao, sejamelas sncronas ou assncronas, possibilita um maior grau de interao entre aluno-professor, aluno-aluno, eat mesmo aluno-objeto de estudo (como no caso dos laboratrios), gerando um ambiente altamentecolaborativo no qual a troca de experincias, idias e informaes acontece com muito mais fluidez,reduzindo assim a passividade do estudante em relao ao processo de aprendizagem, e proporcionando umestmulo adicional para que a informao seja adequadamente processada e transformada em conhecimento.

    9

  • 7/26/2019 Tutorial Re Decomp 1

    10/45

    Redes de Computadores I: Ambientes Virtuais versus Reais

    Ambientes Virtuais versus Ambientes Reais com Acesso RemotoA experimentao de grande importncia na sedimentao de conceitos tericos, especialmente para

    estudantes de engenharia. Sob este aspecto, aulas laboratoriais so bastante relevantes para odesenvolvimento intelectual dos estudantes de determinadas disciplinas. Nem sempre, porm, possveldisponibilizar uma infra-estrutura que proporcione o estudo prtico de teorias vistas em sala de aula, issoporque laboratrios em suas formas convencionais so caros e possuem uma logstica complexa, alm deno permitirem uma forma simples de compartilhamento [ALAMO, 2005].Ambientes Virtuais de ExperimentaoPara contornar o problema do custo, anteriormente colocado, laboratrios virtuais so utilizados. Esteslaboratrios podem ser descritos como ambientes artificiais de experimentao, gerados por meio desoftwares especficos.

    Uma abordagem usada para a criao de laboratrios virtuais a aplicao de softwares de simulao,utilizados para criar modelos matemticos capazes de imitar o comportamento de um ambiente real, sob ainfluncia de determinadas variveis. Neste caso, a estruturao de um ambiente fsico desnecessria.Exemplos de softwares largamente utilizados com este pretexto na rea de redes de computadores so oNetwork Simulator NS-2 (www.isi.edu/nsnam/ns/), o OPNET (www.opnet.com) e o Shunra(www.shunra.com). Tais softwares permitem a observao dos mais diversos comportamentos de redes decomputadores sob influncia de variveis pr-definidas, estritamente por meio de simulao. Hoje j possvel o uso de simuladores que propiciam um resultado muito prximo do experimentado em ambientesreais, sem incorrer em desperdcios materiais ou problemas de segurana, e tudo isso a um custo mais baixose comparado montagem de uma estrutura real [Mendes, 2001].

    Um problema com a aplicao de softwares simuladores como ferramenta de ensino que a modelagem deambientes virtuais que se aproximam da realidade demanda tempo e, dependendo do caso, pode ser umaatividade extremamente complexa, dado o nmero de variveis a serem consideradas. Alm disso, ambientesgerados por simuladores so artificiais, e podem no instigar o senso de realidade no estudante, levando-o aodesinteresse [DENIZ, 2003]. Outro problema com a aplicao de simuladores que, apesar de aderirem aopropsito de disponibilizar um ambiente para experimentao a um custo reduzido, pecam por nodisponibilizarem uma maior variedade de recursos. Finalmente, a opo pelo uso de simuladores, na maiorparte das vezes, no resolve o problema temporal e logstico, pois no possibilita ao aluno realizar seusexperimentos a qualquer hora e em qualquer lugar. Isso ocorre pela impossibilidade de acesso remoto aosoftware de simulao, ou mesmo pela inabilidade do estudante em operar este software por conta prpria.

    Uma segunda abordagem utilizada na criao de laboratrios virtuais implica em estruturar um ambientefsico contendo uma srie de computadores interconectados, no qual funcionalidades de determinadosdispositivos, como roteadores, possam ser desempenhadas por estes computadores, por intermdio deconfiguraes ou de softwares especficos. [SOUSA, 2003], por exemplo, props a aplicao de ferramentasdisponveis ao sistema operacional Linux para arquitetar um ambiente composto de quatro computadores,capaz de simular parte da infra-estrutura de uma rede baseada no protocolo MPLS com suporte a qualidadede servio (QoS). A proposta adota o pacote de software Zebra (www.zebra.org), que habilita roteamentodinmico em sistemas Linux e a instalao de um ncleo (kernel) modificado do sistema operacional, quepossibilita o uso do conjunto de protocolosDiffserve MPLS.

    10

  • 7/26/2019 Tutorial Re Decomp 1

    11/45

    Neste caso, computadores comuns executando verses modificadas do sistema operacional Linuxdesempenham algumas funes especficas de roteadores. Apesar de bastante interessante, a proposta limitada em funcionalidade j que foca exclusivamente em experimentos de qualidade de servio (QoS), ouseja, outros protocolos e recursos no esto previstos neste ambiente. Outra limitao deste tipo de

    arquitetura a impossibilidade de utilizar outros protocolos de Enlace que no Ethernet na estruturao darede experimental. Alm disso, o laboratrio em questo no foi concebido para ser acessado remotamente,mas para uso em aulas convencionais de laboratrio, o que restringe o acesso dos alunos ao ambiente.Ambientes de Experimentao Reais com Acesso RemotoLaboratrios reais acessveis remotamente so ambientes fsicos, manipulados via rede, que possibilitam aosestudantes a experimentao por meio da interao com dispositivos reais [DENIZ, 2003]. Os laboratriosremotamente acessveis endeream simultaneamente os problemas logstico e temporal e, em parte, oproblema financeiro, j que possibilitam a um maior nmero de estudantes o contato com o ambientelaboratorial sem a necessidade de estar fisicamente presente e permite o rateio dos custos da infra-estrutura

    entre seus patrocinadores. Isso permite que estes laboratrios sejam estruturados em espaos bastantecontidos, e praticamente em qualquer lugar do mundo.O Emulab (www.emulab.net), da Escola de Computao da Universidade de Utah, por exemplo, umaestrutura complexa, composta por aproximadamente trezentos computadores (chamados de nodes)interconectados por meio de comutadores (switches) fsicos, permitindo o desenvolvimento de sofisticadosexperimentos nas reas de computao distribuda e redes de computadores. O ambiente estruturado deforma a permitir a realizao de diversos experimentos isolada e simultaneamente. Para utilizar oEmulab, ousurio (ou grupo de usurios) deve gerar um experimento, utilizando a linguagem NS-2. O experimentogerado ento submetido e os recursos do Emulab necessrios so alocados. O experimento, uma vezconfigurado, totalmente acessado remotamente.

    Em uma escala maior, o PlanetLab (www.planet-lab.org) um projeto de caractersticas semelhantes aoEmulab, porm, seus nodesencontram-se distribudos pelo globo. A vantagem da utilizao do PlanetLabpara a realizao de experimentos seria a incorporao da Internet como parte integrante do ambiente. Issopermite a experimentao com elementos impossveis de serem gerados em um ambiente controlado,resultando na gerao de dados mais realistas. Atualmente, o Emulab permite a integrao de nodesdoPlanetLab- conhecidos neste contexto como Wide Area Nodes - em seus experimentos.Apesar de proverem um ambiente para o desenvolvimento de experimentos avanados, tanto o Emulabquanto oPlanetLabapresentam limitaes quando o foco a experimentao com elementos de rede:

    O Emulab utiliza computadores (chamados de nodes, no Emulab) para desempenhar o papel deelementos de rede, como roteadores. Os prprios criadores e mantenedores da superestrutura no aindicam para estudos que tenham como foco o comportamento ou a configurao deste tipo deelemento em uma rede, por exemplo;NoEmulab, as definies da rede experimental devem ser realizadas por meio da sintaxe NS-2, umanotao no muito popular entre os estudantes no-universitrios;OEmulabno possibilita a incorporao da figura de um switchao experimento. A rede fsica local(LAN) artificialmente gerada via NS-2, assim que o experimento submetido;Os nodescomunicam-se diretamente com a rede de controle do Emulab, sendo este um requisito parao acesso remoto. Esta comunicao traduz-se na imposio de alguns dos endereos IP a serem

    11

  • 7/26/2019 Tutorial Re Decomp 1

    12/45

    utilizados em cada node;Um experimento noEmulabdeve ser previamente definido e submetido para alocao e configuraodos recursos necessrios (no caso de estudantes, esta atividade deve ser realizada pelo Professor, eno diretamente pelo estudante). A topologia do experimento, uma vez configurada, no pode seralterada de forma rpida.

    Outro exemplo de ambiente de experimentao remotamente acessvel o iLabs (http://icampus.mit.edu/projects/iLabs.shtml), projeto liderado peloMassachusetts Institute of Technology(MIT) que proporciona oacesso a diversos laboratrios remotamente, por meio de uma conexo Internet e um navegador Web.Emseus primrdios, em 1998, o MIT iLabsdisponibilizou um laboratrio de instrumentao remoto que permitiaaos estudantes a medio da corrente / voltagem de transistores e outros dispositivos microeletrnicos. Esselaboratrio hoje usado por mais de quinhentos estudantes do MIT todo ano, em trs diferentes cursos.Posteriormente outros sete laboratrios remotos foram criados e integrados ao iLabs, como um que permite aanlise dinmica de sinais e outro que disponibiliza a realizao de experincias com cristalizao depolmeros. Em 2005, os laboratrios do iLabs j eram acessados remotamente por estudantes e

    pesquisadores na Grcia, Sucia, Inglaterra, Egito, Tanznia, Taiwan, China, Uganda e Nigria, mostrando aflexibilidade por trs desta arquitetura.Mesmo sendo uma ferramenta tecnolgica de ensino visionria, a arquitetura proposta pelo iLabs nopermite a interao em tempo real com os experimentos. Neste sentido, o iLabspode ser classificado comouma ferramenta assncrona de ensino j que, primeiro o aluno envia as configuraes do experimento a umservidor e, posteriormente, este servidor envia os resultados do experimento de volta ao aluno.Existem basicamente duas abordagens distintas no que se refere estruturao de um laboratrio remoto: Aabordagem cliente-servidor (usada no iLabs) e a abordagem da estao remotamente controlada [PROSKE,2006]. Na primeira, um servidor controla de forma centralizada o acesso aos recursos do laboratrio. No

    caso de um laboratrio de redes de computadores, por exemplo, um servidor controlaria o acesso aosequipamentos de rede disponveis para experimentao, alm de outras funes. Esta abordagem implica naconfigurao de uma mquina para agir como servidor central desta arquitetura, e na instalao pelosestudantes de programas clientes em suas estaes para acesso ao ambiente. A principal vantagem destaabordagem a escalabilidade do modelo. A desvantagem fica por conta da complexidade inerente a estaarquitetura.J a segunda abordagem implica em acessar e controlar remotamente uma estao de trabalho que, por suavez, encontra-se diretamente conectada ao objeto de estudo. A aplicao desta abordagem em umlaboratrio remoto de redes de computadores, por exemplo, demandaria a disponibilidade de uma estao detrabalho para cada dispositivo objeto do experimento. O estudante ento acessaria remotamente cada

    estao para obter o controle do dispositivo. O acesso, neste caso, acontece por meio de softwares decontrole remoto, como o VNCou o Terminal Services, da Microsoft. Claramente esta abordagem no fazmuito sentido quando aplicada a um laboratrio remoto de redes de computadores, porm, pode serinteressante para casos especficos, como laboratrios remotos de instrumentao ou de robtica, ondemuitas vezes o nmero de objetos de estudo reduzido e o uso de software proprietrio para controle dosinstrumentos se faz necessrio. Dentre os benefcios desta abordagem esto a eliminao do nus dainstalao de um software cliente proprietrio na mquina do estudante, e a relativa simplicidade daarquitetura. A falta de escalabilidade seria um ponto negativo desta abordagem.Laboratrios remotamente acessveis, portanto, resolvem de forma direta o problema temporal e espacial

    12

  • 7/26/2019 Tutorial Re Decomp 1

    13/45

    (quando e onde) por meio do acesso remoto, porm, apenas contornam o problema financeiro (custo). Apossibilidade prevista de compartilhamento permite a diluio dos custos entre diversos patrocinadores,porm, estes custos no so reduzidos, mas rateados.

    Arquiteturas para Laboratrios de Redes de Computadores Remotamente Acessveis

    Alguns modelos para disponibilizar o acesso remoto a laboratrios de redes de computadores j forampropostos em trabalhos como [HUA, 2003-a], [LIU, 2001] e [OLIVEIRA, 2001]. A principal semelhanaentre as propostas o modo como os dispositivos de rede do laboratrio so acessados, que por intermdiode um servidor de consoles. Este mtodo permite o acesso e a manipulao dos dispositivos que compem olaboratrio mesmo que suas configuraes apresentem inconsistncias. Um roteador que se encontre fora darede IP, por exemplo, continuar acessvel pelo estudante, por meio de sua porta console.As diferenas encontram-se nas abordagens propostas em cada um dos trabalhos analisados. [HUA, 2003-a],por exemplo, foca na simplicidade e no controle remoto dos dispositivos, sugerindo uma arquitetura simplese direta na qual um servidor central gerencia todo o ambiente. Este servidor, portanto, seria responsvel por

    administrar os acessos ao ambiente e outras funes, consideradas secundrias. Posteriormente, em [HUA,2003-b], esta proposta enriquecida com a integrao desta arquitetura a um ambiente de e-learning,utilizando-se da plataforma Microsoft ConferenceXP.[LIU, 2001], por sua vez, prope uma arquitetura em camadas, onde cada camada responsvel por umafuno especfica. Sob este aspecto, servidores dedicados teriam funes especficas: Acesso, Contedo(e-learning), Operao e Configurao. A proposta foca em ambientes especficos de estudo pr-definidos.Para o trabalho analisado, o ambiente definido foi o Micro Internet Test Bed(MITB), que replica emescala menor a arquitetura da Internet. [OLIVEIRA, 2001] tambm adota uma abordagem em camadas,mas sem propor a pr-definio de ambientes. No entanto, as topologias lgicas possveis so limitadas e umassistente de laboratrio se faz necessrio caso uma alterao seja necessria.

    Em todos os casos, vantagens e limitaes podem ser abstradas. A utilizao de um servidor de consoles e aarquitetura em camadas, por exemplo, so interessantes sob o ponto de vista tcnico. A limitao deescalabilidade dificuldade de expanso - e a pouca flexibilidade no manejo de topologias so problemasque devem ser endereados.Mesmo no se tratando de um assunto totalmente novo, so poucos os cursos que hoje utilizam este tipo deferramenta. Das faculdades e universidades que oferecem aulas em laboratrios de redes de computadorescomo parte do currculo, muitas ainda optam pelo modelo presencial, levando seus alunos at asdependncias fsicas do laboratrio para que ento os experimentos sejam realizados.

    No caso de laboratrios de redes de computadores, existe pouco benefcio em se adotar este modelo emdetrimento ao modelo remoto, j que mesmo quando fisicamente presentes no laboratrio, a maior parte dasatividades que os alunos desempenham ocorre por intermdio de terminais que disponibilizam o acessodireto ou indireto aos objetos de estudo como roteadores, comutadores e outros elementos de rede. Uma daspoucas atividades realmente fsicas realizadas em um laboratrio convencional de redes de computadoresseria a movimentao de cabos de um equipamento para outro. Contudo, estas so atividades meramentemecnicas, com pouco ou nenhum valor didtico agregado. O verdadeiro desafio intelectual encontra-se naaplicao da teoria vista em sala de aula na configurao apropriada dos dispositivos, para que estesexecutem uma determinada funo.

    13

  • 7/26/2019 Tutorial Re Decomp 1

    14/45

    Neste sentido, o uso de laboratrios remotos de rede de computadores proporciona aos alunos exatamente amesma sensao de se estar em um laboratrio convencional. A principal diferena percebida que osequipamentos no se encontram fisicamente presentes. Este fato, entretanto, pode ser considerado um pontofavorvel e no um demrito, j que no mundo real, muitas vezes equipamentos precisam ser configuradosmesmo estando fisicamente a quilmetros de distncia. O movimento de centralizar o acesso aos

    laboratrios, tornando seu acesso remoto, pode surtir efeitos positivos. Uma vez que no h a necessidade decriao de bancadas de trabalho, o laboratrio pode ser construdo em qualquer lugar no necessariamentedentro do campus - e em um espao consideravelmente reduzido. Isso pode ajudar na reduo de custos, quepode reverter na aquisio de um maior nmero de equipamentos mais modernos e de melhordesempenho.Uma das desvantagens de laboratrios remotos com relao a laboratrios em sua forma tradicional, deacordo com [Steinemann, 2002], seria a substancial reduo do trabalho em equipe. Se aplicados em salas deaula convencionais, entretanto, laboratrios remotos podem proporcionar o mesmo grau de trabalho emequipe que laboratrios convencionais. Por exemplo, alunos podem sentar-se s estaes em grupos de dois,trs ou mesmo quatro para, juntos, chegarem soluo de um dado problema.

    Mantendo-se este contexto, possvel ir ainda mais longe, por exemplo: Um exerccio consiste em colocaruma rede fisicamente composta de cinco roteadores para funcionar. Se cada roteador for designado a umgrupo de trs estudantes, o potencial interativo abrange os quinze estudantes simultaneamente, j que cadagrupo depende do outro para verificar o resultado final da experincia. Os cinco grupos trabalharo comouma grande equipe, buscando um mesmo resultado.J quando aplicados em cursos a distncia, laboratrios remotos podem no oferecer o mesmo grau deinteratividade presente em laboratrios tradicionais. Este efeito pode ser amenizado na fase de projeto docurso. Se a ferramenta de laboratrio remoto for usada isoladamente, as chances de interao em equipeficam muito reduzidas. Entretanto, se for utilizada em conjunto com ferramentas tecnolgicas de carter

    sncrono, como chate videoconferncia, as possibilidades de interao aumentam consideravelmente.A construo de um laboratrio remoto de redes de computadores deve levar em considerao uma srie devariveis. Destas, trs importantes so as definies de como, onde e quando o acesso ao ambiente irocorrer. Em laboratrios tradicionais de redes de computadores, o acesso aos dispositivos normalmenteocorre por meio do estabelecimento de uma sesso Telnetentre a estao do aluno e o dispositivo emquesto, ou por meio de uma conexo serial padro RS-232 direta entre uma estao e o dispositivo. Aprimeira forma mencionada (Telnet) a mais simples de ser implementada para acesso ao ambiente remoto,porm, ela impe algumas limitaes ao modelo:

    O acesso direto via Telnetpressupe que o dispositivo alvo esteja configurado com um endereo IP, e

    que este endereo IP encontre-se acessvel;Este tipo de acesso exige que o usurio disponha de um programa Telnetcliente instalado em suaestao;O acesso Telnetrealizado diretamente pode representar riscos de segurana, e algumas empresas oufaculdades podem no permitir este tipo de acesso.

    A primeira limitao a mais sria, j que ela no existiria em um laboratrio tradicional de redes decomputadores, onde um dispositivo sem qualquer tipo de configurao pode ser acessado por meio de umaconexo serial direta. Para eliminar o problema, a adoo de um elemento intermedirio conhecido comoservidor de consoles pode ser considerada, promovendo o acesso aos dispositivos por meio de suas portasseriais, mesmo que nenhuma configurao tenha sido realizada nestes dispositivos. Desta forma, o estudante

    14

  • 7/26/2019 Tutorial Re Decomp 1

    15/45

    acessaria o servidor via Telnet, por exemplo, e este servidor redirecionaria a conexo para o dispositivodesejado. Esta a estratgia utilizada em [HUA, 2003-a], [HUA, 2003-b], [LIU, 2001], [Oliveira, 2001]. Osegundo problema, apesar de no ser to grave j que grande parte dos sistemas operacionais existentespossui como parte integrante um programa cliente Telnet, pode ser resolvido por meio da adoo de umcliente Telnetbaseado em Java, que carregado localmente no navegador Web do estudante, quando

    necessrio [HUA, 2003-b]. J para o terceiro ponto levantado, a alterao da porta TCP de 23 (porta decomunicao Telnetpadro) para 8080, no servidor, resolveria o problema em grande parte dos casos, j quea porta de comunicao TCP 8080 normalmente permitida em sistemas de segurana de redes. Outraproposta para a resoluo deste problema seria o estabelecimento de uma VPN entre a estao do aluno e oservidor do laboratrio remoto, mas isso implicaria na instalao de um software adicional (cliente VPN) porparte do aluno e tambm exigiria que a porta lgica de comunicao utilizada pelo software VPN fosseliberada nos sistemas de segurana existentes.As definies de quando e onde o acesso deve ocorrer, no caso de laboratrios convencionais, so bastanteclaras: O acesso ocorre exclusivamente durante a aula laboratorial, no ambiente fsico onde o laboratrioencontra-se estruturado. Quando o contexto alterado para laboratrios remotos, todavia, estas variveis

    tornam-se indefinidas j que um dos objetivos almejados exatamente tornar o acesso ao ambiente possvel qualquer hora, e de qualquer lugar. Desta forma, mecanismos de controle de acesso e de utilizao dosrecursos devem ser implementados, permitindo que o ambiente seja remotamente gerenciado [LIU, 2001],[HUA, 2003-b].

    Simuladores e Emuladores de Dispositivos de RedesRecentemente, softwares que reproduzem caractersticas e funcionalidades de dispositivos de redetornaram-se amplamente disponveis. A diferena terica entre os softwares emuladores e os softwaressimuladores que os primeiros reproduzem fielmente caractersticas do objeto original, podendo em tese substitu-lo em todas as suas funes. Essencialmente, um emulador um software criado para transcrever

    instrues de um determinado processador para o processador no qual ele est sendo executado, sendotambm capaz de reproduzir funes de circuitos integrados e chips do sistema de hardware. J osprogramas simuladores imitam o objeto original em algumas funes, porm, no em todas e nem sempre deforma muito realista.Em se tratando de redes de computadores, ambos esto presentes: softwares simuladores e softwaresemuladores. Os primeiros, neste caso, reproduzem algumas caractersticas de dispositivos de redes reais,possibilitando a execuo de alguns experimentos. Nem tudo permitido, entretanto. Alguns protocolos noso compreendidos, algumas funes no se encontram disponveis e, em alguns casos, configuraesrealizadas produzem um efeito diferente do experimentado em dispositivos reais. Exemplos de softwaressimuladores para o estudo de redes de computadores so o Network Simulator NS-2 (www.isi.edu/nsnam

    /ns/), o Netsim, d a Boson Software (www.boson.com) , o Network Visualizer, d a RouterSim(www.routersim.com), o OPNET(www.opnet.com) e o Shunra(www.shunra.com). Os quatro primeiros somuito usados no meio educacional, j o ltimo mais aplicado no meio profissional.Os softwares emuladores, por sua vez, tm a capacidade de transformar um computador comum em umdispositivo de rede, como um roteador real, replicando praticamente todas as suas funes. A limitao ficapor conta do desempenho do elemento emulado, notadamente inferior ao de um elemento fsico. Por estemotivo, desaconselhvel a aplicao de elementos emulados em testes de performance.A principal vantagem do uso de emuladores ao invs de simuladores de redes no ensino e na pesquisa

    15

  • 7/26/2019 Tutorial Re Decomp 1

    16/45

    relacionados a redes de computadores a possibilidade de se trabalhar com trfego em tempo real edisponibilizar um ambiente mais prximo do mundo real. Alm disso, um dos maiores benefciosproporcionados a possibilidade de interconectar o ambiente virtual (emulado) a um ambiente real,permitindo a utilizao de aplicaes sem que estas tenham de ser reescritas, e o desenvolvimento deexperimentos mais sofisticados e realistas.

    Outro ponto importante a ser considerado quanto ao uso de emuladores a interface entre o elementoemulado e o usurio, que pode interagir com o elemento virtual em tempo real, e de forma muito semelhantea que ele o faria se estivesse lidando com um dispositivo fsico. A configurao dos elementos virtuais, porexemplo, pode ser realizada de forma anloga de elementos reais, e no por meio de uma linguagem deprogramao criada especificamente para este propsito. Comandos digitados em um dado elemento afetama rede experimental em tempo real.Em [BBB, 2002], uma arquitetura bsica de uma rede formada apenas por emuladores de roteadores apresentada, conforme ilustra a figura 2.

    Figura 2: Diagrama de uma rede criada usando somente emuladores de roteadores. Fonte: [BBB,2002]

    Na figura, trs PCs so apresentados, identificados pelas trs elipses maiores. Cada PC executa duas ou maisinstncias de um programa emulador de roteadores. Cada instncia (representada pelo pequeno crculo coma inscrio VR) pode se comunicar com as demais, em um mesmo PC, por meio de uma conexo UnixIPC (Inter Process Communication), j que cada instncia um processo distinto. As instncias iniciadasem um mesmo PC, por sua vez, podem se comunicar com instncias iniciadas em outros PCs por meio de umprocesso que estabelece uma conexo lgica entre elas. Neste processo, datagramas com destino a umroteador virtual (VR) instanciado em um PC remoto so encapsulados em um segmento UDP e, ento,encaminhados via rede para o roteador virtual destino, que deve estar configurado para receber conexes emuma determinada porta lgica UDP.

    A proposta apresentada em [BBB, 2002] no identifica um software especfico utilizado para a criao dosroteadores virtuais, porm, deixa claro que nem todos os protocolos e RFCs so suportados nestaimplementao. Um experimento que envolvesse Frame-Relay ou ATM por exemplo, no poderia serimplementado utilizando-se este modelo. A arquitetura geral, entretanto, bastante interessante, j quepermite a criao de uma rede distribuda de elementos virtuais.

    Comentrios FinaisFoi apresentada uma breve anlise de importantes trabalhos relacionados ao tema desta srie de tutoriais.Grande parte destes trabalhos mostra que existem grandes possibilidades didticas para a aplicao de

    16

  • 7/26/2019 Tutorial Re Decomp 1

    17/45

    laboratrios remotos no ensino, todavia, pouco movimento prtico nesta direo observado. Faculdades euniversidades ainda tendem a estruturar laboratrios convencionais, mesmo quando laboratrios remotosapresentam-se como uma alternativa menos custosa e, muitas vezes, pedagogicamente mais interessante. OMIT e outros grandes centros educacionais j aderiram em parte ao modelo, entretanto, instituies demenor porte curiosamente as que mais se beneficiariam desta proposta ainda relutam em implement-la.

    Como poucos so os trabalhos publicados sobre o assunto, e destes poucos, nenhum aborda em detalhes oscustos ou os procedimentos para a estruturao destes ambientes, vivel concluir que a no adoo desteconceito deva-se dificuldade de encontrar maiores informaes sobre o assunto, ou mesmo dificuldadeem aceitar o novo paradigma que este modelo sugere.O alto nvel de conhecimento tcnico e terico necessrio para a bem-sucedida implementao emanuteno de laboratrios remotos aliados aos custos imaginados para a construo da infra-estruturapodem ser considerados fatores de resistncia ao modelo. Este trabalho, por sua vez, visa desmistificar estaferramenta, propondo um modelo diferenciado para a construo de laboratrios remotos de redes decomputadores a um custo acessvel, permitindo que mesmo instituies de ensino de pequeno porte possamse beneficiar desta poderosa mas ainda pouco explorada - ferramenta de ensino.

    17

  • 7/26/2019 Tutorial Re Decomp 1

    18/45

    Redes de Computadores I: Arquitetura Proposta

    Escopo do TrabalhoObjetivando definir o escopo da pesquisa, dois questionrios foram colocados para um pblico previamente

    definido: Estudantes e Professores de cursos de Tecnologia de Redes de Computadores de quatro faculdadesem So Paulo, pioneiras no oferecimento deste tipo de curso. importante frisar que estes questionrios no tm carter cientfico, mas visam meramente identificar asexpectativas dos discentes e docentes com relao ao ambiente laboratorial e obter uma estimativa deoramento disponvel por instituio, para ampliao ou construo de um ambiente laboratorial. Osquestionrios foram apresentados a estudantes, professores e coordenadores de cursos de Tecnologia emRedes de Computadores de quatro faculdades, todas em So Paulo, em formato aberto (resposta nodirigida) e informal, pessoalmente, via e-mail, ou via fruns de discusso.O resultados so apresentados nas tabelas 1 e 2.

    Tabela 1: Questionrio realizado em quatro faculdades de tecnologia em So Paulo

    Pergunta: "O que define um bom laboratrio de redes?"

    Estudante 1:O laboratrio de redes ideal deve oferecer os mesmos equipamentos encontrados emum ambiente real.

    Estudante 2:Deve permitir que cada aluno tenha acesso a um equipamento, de preferncia umroteador e um switch.

    Estudante 3: Deve suportar a elaborao de cenrios compatveis com os vistos no mundo real.

    Estudante 4: O que define um bom laboratrio so os equipamentos que ele possui

    Estudante 5:Um bom laboratrio de redes deve ser capaz de replicar situaes do mundo real, edeve possibilitar ao aluno interagir com cada equipamento.

    Professor 1:

    Um bom laboratrio de redes permite a interao dos alunos com os equipamentos epermite aos professores a criao de cenrios diferentes, de forma rpida edescomplicada.

    Professor 2:

    O laboratrio de redes deve possuir equipamentos e recursos que possibilitem acriao de topologias e experimentos que permitam a demonstrao prtica do que foivisto em sala de aula. Deve suportar diversos protocolos, topologias e tecnologias.

    Professor 3:

    Laboratrios de redes devem ser capazes de transmitir ao aluno a sensao de estarinteragindo com o mundo real. De ver, na prtica, o que aprenderam em sala de aula.Hoje em dia muito importante que os estudantes saiam da faCuldade melhorpreparados para lidar com o mundo real. Um bom laboratrio de redes pode suprir estanecessidade.

    Professor 4:

    Um bom laboratrio pode ser definido pela qualidade dos equipamentos que eledispe, pela proporo equipamento x aluno, pela diversidade de tecnologiassuportadas e pelos protocolos e topologias que ele permite utilizar.

    18

  • 7/26/2019 Tutorial Re Decomp 1

    19/45

    interessante notar que, do lado dos estudantes, houve uma tendncia em responder que o que define umbom laboratrio de redes a proximidade que os experimentos realizados nele podem ter com um ambientede redes real. Pelo lado dos docentes, um bom laboratrio deve ser essencialmente - capaz de suportarcerta diversidade de protocolos e aplicaes, permitir a interao com o estudante, possibilitar a prtica de

    conceitos vistos em sala de aula, dispor de equipamentos de qualidade e em quantidade adequada paraatender aos alunos.Outro questionamento realizado foi direcionado aos coordenadores dos cursos de Redes de Computadoresnas mesmas quatro faculdades, desta vez, buscando-se estimar o valor oramentrio disponvel para cadauma destas instituies para a construo de um laboratrio de redes de computadores, ou para atualizao /expanso de um laboratrio j existente. O objetivo deste questionrio levantar o oramento reservado aoslaboratrios de redes nestas faculdades.A tabela 2 apresenta estes resultados.

    Tabela 2: Questionrio realizado aos coordenadores dos cursos de Redes de ComputadoresEm qual faixa se situaria o atual oramento de sua instituio para construo (C) ou

    ampliao/ atualizao (A) de um laboratrio de Redes de Computadores?

    Respondente C A R$5000R$10000

    R$15000

    R$20000

    R$25000

    R$30000

    Faculdade 1 X X

    Faculdade 2 X X

    Faculdade 3 X X

    Faculdade 4 X X

    Com base nas respostas obtidas, percebe-se que duas das instituies pesquisadas possuem verba limitadapara a ampliao / modernizao de suas instalaes laboratoriais, enquanto outras duas possuem um poucomais de verba, porm, para a construo de uma estrutura completa. Os valores apresentados, no raro, soinsuficientes para a aquisio de equipamentos de primeira linha em quantidade suficiente para atender sexpectativas de estudantes e professores, conforme apresentadas na tabela 1.A arquitetura proposta por este trabalho almeja oferecer aos docentes e discentes o acesso a uma estruturade laboratrio de redes de computadores que contemple PCs, roteadores sofisticados e switches, que

    possam ser livremente manipulados e interconectados, sem o manejo fsico de cabos, e sem a necessidade degrandes investimentos em equipamentos especficos e custosos, possibilitando:

    Criao de diversas topologias fsicas e lgicas remotamente, sem necessidade do manejo fsico decabos;Acesso a cada um dos elementos de estudo (roteadores,switches e servidores) de forma totalmenteremota;Acesso por intermdio de um navegador Web, com suporte a linguagem Java, de qualquer local quepossua uma conexo com a Internet, a qualquer momento (este requisito torna o modelo facilmenteintegrvel aos ambientes de ensino a distncia).

    19

  • 7/26/2019 Tutorial Re Decomp 1

    20/45

    Prtica na configurao de elementos de rede como roteadores e switches;Testes de conceitos de redes utilizando as sete camadas do modelo ISO-OSI;Controle total de cada elemento de ensaio, mesmo que estes no possuam qualquer tipo deconfigurao;Observao do comportamento de uma rede sob a ao de diferentes variveis;

    Prtica de concepo e estruturao de redes de complexidade e propores variadas;Interao com os elementos de ensaio por meio de uma interface simples e direta, por meio de umnavegador WEB convencional;Simulao de trfego de aplicaes diversas dentro do ambiente experimental;Observao prtica e experimentao em tempo real com os seguintes protocolos e aplicaes:

    Protocolos de RoteamentoBGPv4OSPF e OSPFv3RIPv1 e v2IGRP, EIGRP e EIGRPv6 (Cisco)ISO IS-IS e Integrated IS-IS

    Protocolos RoteveisIPv4 e IPv6Protocolos de Enlace, Transporte e Controle

    EthernetEtherChannel (agrupamento de interfaces Ethernet)PPPHDLCFrame-RelayMPLSTCP / UDPICMP e ICMPv6

    Spanning Tree Protocol (STP)VLANs e Trunking (dot1q e Cisco ISL)SNMP (v2 e v3)NAT

    AplicaesDHCP e DHCPv6TelnetTraceroute e PingSSHTFTP

    Pblico-alvoTendo-se em vista os pontos anteriormente mencionados, o pblico que mais seria beneficiado pelo acesso auma estrutura nestes moldes seria:

    Estudantes de cursos tcnicos ou superiores de tecnologia e / ou de formao profissional, com focoem redes de computadores;Indivduos que almejem obter certificaes de mercado oferecidas por fabricantes (como Cisco eJuniper);Empresas de tecnologia e telecomunicaes, buscando o treinamento, formao e especializao de

    20

  • 7/26/2019 Tutorial Re Decomp 1

    21/45

    seus profissionais;Empresas ou instituies acadmicas visando a realizao de testes de rede em um ambientecontrolado.

    Descrio Geral da Arquitetura PropostaA arquitetura para construo de laboratrios de redes de computadores remotamente acessveis propostapor este trabalho baseia-se na possibilidade de interconexo entre elementos de rede reais e virtuais,resultando em um ambiente hbrido e distribudo, possibilitando a expanso da infra-estrutura laboratorial deforma rpida, a um baixo custo, e sob demanda. A figura 3 apresenta uma viso macro desta arquitetura.

    Figura 3: Estrutura geral da arquitetura propostaA arquitetura organizada em trs camadas funcionais, conforme descrito abaixo.

    A Camada 1define como a interao entre o usurio (estudante) e o ambiente laboratorial deve ocorrer,tanto no nvel de aplicao quanto no nvel de rede. As aplicaes definidas nesta camada so o Telnet e oHTTP, este ltimo por meio de um navegador Web com suporte linguagem Java. O requisito de rede paraque a interao ocorra que o usurio encontre-se conectado Internet ou rede local onde o laboratrioencontra-se interligado.A Camada 2da arquitetura define como o acesso aos dispositivos de ensaio reais e virtuais - deve ocorrer.Os dispositivos reais so acessados por meio de um servidor de consoles (acesso serial indireto). O acessoaos elementos virtuais realizado via emulao do acesso serial indireto. Isso alcanado por meio domapeamento de portas lgicas TCP s portas console dos dispositivos virtuais. Nesta camada tambm sodefinidas as diretrizes de segurana e os esquemas de gerncia da estrutura como um todo. Os sistemas

    operacionais e aplicaes, necessrios ao suporte da arquitetura, como servidores TFTP, HTTP, DNS eDHCP tambm so especificados nesta camada.A Camada 3, por sua vez, define os elementos (reais e virtuais) a serem acessados pelos usurios, e comoestes elementos devem ser interconectados. Nesta camada tambm definido o software de emulao paragerao dos elementos virtuais e o mtodo a ser seguido para a criao destes elementos.

    Contextualizao de Arquitetura Hbrida e DistribudaArquitetura hbrida

    21

  • 7/26/2019 Tutorial Re Decomp 1

    22/45

    Apesar das aparentes vantagens em se adotar o modelo remoto de laboratrios de redes de computadores,uma limitao importante a ser considerada a falta de escalabilidade. Para ampliar a estrutura, maiscomponentes de rede como roteadores e switchesdevem ser integrados ao ambiente, o que implica naaquisio (custo) e acomodao (logstica) de novos equipamentos. Uma forma de enderear estes

    problemas a estruturao de ambientes hbridos.A arquitetura proposta por este trabalho divide-se em dois mdulos distintos: O Fsico e o Virtual. O MduloFsico o ncleo da arquitetura, inteiramente constitudo de dispositivos reais como roteadores e switches. OMdulo Virtual, por sua vez, seria o mdulo perifrico, formado por elementos virtuais transparentementeintegrados ao ncleo, permitindo assim a expanso do ambiente de forma rpida e a um custo reduzido. Afigura 4 apresenta este conceito. Os elementos R1, R2 e S1 so roteadores e switches reais, compondo oMdulo Fsico (ncleo) da arquitetura. Os elementos R3, R4, R5 e R6 seriam roteadores virtuais conectadosao ncleo, resultando em uma arquitetura hbrida. Neste exemplo, computadores comuns (PC1, PC2 e PC3)desempenham o papel dos roteadores R3, R4, R5 e R6 por meio de um software especfico. Os elementosvirtuais gerados por software possuem as mesmas funcionalidades encontradas nos dispositivos reais.

    Figura 4: Exemplo de arquitetura hbrida

    Esta arquitetura permite que um nico computador emule mais de um elemento de rede simultaneamente(ilustrado na figura 4 pelo computador PC3), entretanto, o poder de processamento e a quantidade dememria neste computador devem ser diretamente proporcionais ao nmero de elementos emulados, e complexidade destes elementos. Esta possibilidade permite a expanso do laboratrio a um custo reduzido, ereduz os requisitos principalmente de estrutura fsica do laboratrio, tais como espao em rackse energiaeltrica, por exemplo.A topologia fsica apresentada na figura 4 permite o estabelecimento de diversas topologias lgicas, como asapresentadas na figura 5, demonstrando a flexibilidade do modelo hbrido.

    22

  • 7/26/2019 Tutorial Re Decomp 1

    23/45

    Figura 5: Exemplos de topologias lgicas possveis aplicando-se a arquitetura propostaA principal motivao em se adotar uma arquitetura hbrida em prol de uma arquitetura inteiramente virtual o desempenho resultante. Os elementos virtuais no possuem o mesmo desempenho dos dispositivos reais,por eles emulados. Outro ponto a ser considerado que, ao se adotar um ambiente puramente virtual,peca-se em oferecer um resultado mais prximo da realidade aos estudantes. Neste sentido uma arquiteturahbrida pode promover nos estudantes um estmulo pedaggico adicional ao disponibilizar o acesso a umambiente menos artificial.Arquitetura Distribuda

    Alm da facilidade de expanso e da reduo de custos proporcionadas, a adoo de uma arquitetura hbridapara a estruturao de laboratrios de redes possui outro aspecto positivo: A possibilidade de utilizarsistemas geograficamente dispersos para estruturao de um ambiente laboratorial mais completo. Para umainstituio de ensino, tal arquitetura permite a estruturao de laboratrios de tamanho e complexidadevirtualmente ilimitados, por meio do aproveitamento de recursos j existentes em sua rede, para a criao denovos elementos de rede via emulao - e integrao transparente destes novos elementos ao laboratriode redes propriamente dito. As figuras 6 e 7 ilustram esta possibilidade.

    23

  • 7/26/2019 Tutorial Re Decomp 1

    24/45

    Figura 6: Estrutura simplificada da rede de laboratrios de uma instituio de ensinoA figura 6 apresenta - de forma simplificada - a rede de laboratrios de uma dada universidade. Nesta redeexistem quatro laboratrios de computao e apenas um laboratrio dedicado ao estudo de Redes deComputadores. Os laboratrios de computao so formados, em sua maioria, por computadores (PCscomuns) interconectados. O laboratrio de redes, por sua vez, possui equipamentos de redes comoroteadores eswitchesinterconectados, de forma a permitir aos estudantes a interao e experimentao comestes elementos.

    24

  • 7/26/2019 Tutorial Re Decomp 1

    25/45

    Figura 7: Utilizao de elementos ociosos para ampliao do Laboratrio de RedesA figura 7 apresenta a Arquitetura Distribuda como forma de ampliar o laboratrio de redes de forma rpidae a um custo reduzido. No exemplo, trs computadores pertencentes aos laboratrios de computao LabComp B, Lab Comp C e Lab Comp D, respectivamente, foram devidamente preparados para emularelementos de rede que foram posteriormente integrados ao laboratrio de redes A (Lab Redes A), ampliandoassim sua estrutura que passou a contar com seis elementos de rede, ao invs de apenas trs em seu estadooriginal. No exemplo, Lab Redes A assumiria o papel de Mdulo Fsico da estrutura, enquanto que LabComp B,Lab Comp CeLab Comp D seriam os Mdulos Virtuais.Experimentos podem ser realizados no ambiente resultante da mesma forma como seriam em um laboratriode redes tradicional, ocultando do estudante os detalhes estruturais do ambiente. Uma das topologias fsicaspossveis que ilustram a flexibilidade deste modelo apresentada na figura 8.

    Figura 8: Topologia fsica possvel utilizando arquitetura hbrida e distribuda.

    25

  • 7/26/2019 Tutorial Re Decomp 1

    26/45

    Na figura 8, os roteadores representados pelas letras B, C e D foram gerados via software eintegrados ao laboratrio por meio de configuraes especficas nos PCs presentes nos laboratrios decomputaoLab Comp B,Lab Comp CeLab Comp D. Os roteadores representados pelos nmeros 1, 2e 3 so equipamentos fsicos reais, j presentes no laboratrio de redes em seu estado original. Todos os

    elementos ilustrados reais e virtuais - podem ser acessados pelos estudantes e configurados de todas asformas possveis. Endereos de rede podem ser definidos e aplicados s interfaces, que por sua vez podemser ativadas ou desativadas sem que o acesso aos elementos seja interrompido.O principal requisito para o funcionamento do modelo distribudo a existncia de uma conexo de redefuncional entre o laboratrio de redes e os computadores dispersos, que faro a emulao dos elementosadicionais.

    26

  • 7/26/2019 Tutorial Re Decomp 1

    27/45

  • 7/26/2019 Tutorial Re Decomp 1

    28/45

    j que o software em si de domnio pblico, entretanto, o sistema operacional Cisco IOS necessrio execuo de cada instncia de roteador virtual, proprietrio. importante notar que a arquitetura proposta permite a integrao de qualquer tipo de elemento de rede aoambiente. Um elemento criado pelo software Olive, por exemplo, pode ser integrado ao ambiente

    proposto de forma bastante direta. Esta integrao, no entanto, encontra-se fora do escopo deste trabalho.Dynamips / DynagenO Dynamips [DYMP] um bem sucedido projeto de emulao de roteadores. O software permite areproduo fiel das caractersticas de diversos modelos de roteadores do fabricante Cisco Systems, tornandopossvel a criao de cenrios de estudo que, se fossem fisicamente estruturados, apresentariam um customuito elevado. As plataformas de roteadores 1700, 2600, 3600, 3700, e 7200 (processadores MIPS64 ePowerPC) so atualmente suportadas pelo software. Alm disso, o Dynamips permite a adio virtual dealguns mdulos disponveis para cada plataforma de roteador, que adicionam funcionalidades e recursos acada um deles. Atualmente, a emulao dos seguintes mdulos de hardware suportada:

    Mdulos Ethernet: "NM-1E", "NM-4E", "NM-1FE-TX", "PA-FE-TX", "PA-2FE-TX", "PA-4E" e"PA-8E";Mdulos de Comutadores Ethernet: "NM-16ESW";Mdulos GigabitEthernet: "PA-GE", "PA-4T+" e "PA-8T";Mdulos seriais: "NM-4T";Mdulos ATM: "PA-A1";Mdulos POS (Packet over Sonet): "PA-POS-OC3" (experimental, funciona apenas com imagens dosistema IOS mais recentes).

    O software Dynamips tambm capaz de emular os seguintes elementos internos aos roteadores:Dynamic Random Access Memory(DRAM);Non-Volatile Random Access Memory(NVRAM);Signetics SCN 2681 DUART(portas Console e Auxiliar no roteador Cisco srie 7200);National Semiconductors NS16552 DUART(portas Console e Auxiliar nos roteadores Cisco sriesC3600/C3700/C2600);EEPROM NMC93C46;Bootflashde 8 Mb (Intel 28F016SA);Controladores PCI Galileo GT64010/GT64120/GT96100;Disco ATA PCMCIA (por enquanto, disponvel apenas no roteador Cisco srie 7200).

    A vantagem em se adotar um software emulador, como o Dynamips, a possibilidade de interagir com umambiente idntico ao proporcionado por elementos de rede reais. Alm disso, o Dynamips permite ainterconexo do ambiente virtual (emulado) a um ambiente real, de forma totalmente transparente. Issoamplia consideravelmente as possibilidades para laboratrios de redes de computadores, j que permite aoestudante interagir com equipamentos que raramente compem um laboratrio convencional, alm depossibilitar a rpida expanso da arquitetura a um custo bastante reduzido.ODynamips, essencialmente, transcreve instrues de processadores de alguns modelos de roteadores paraque sejam interpretadas pelo processador presente no computador no qual o software est sendo

    28

  • 7/26/2019 Tutorial Re Decomp 1

    29/45

    executando. Como este processo bastante intenso, o desempenho de um roteador emulado jamais serigual ao de um roteador real, sendo esta uma das limitaes identificadas no uso deste software. Acombinao entre dispositivos reais e dispositivos emulados, todavia, ameniza este efeito, proporcionandoum ambiente mais prximo de um ambiente real, ideal para a realizao de experimentos. A utilizao diretado software Dynamips, por si, s no permite a interconexo entre instncias distribudas, alm de no

    disponibilizar um modo centralizado de controle.Um software desenvolvido posteriormente, batizado de Dynagen [DYNG], opera em conjunto com oDynamips provendo uma interface front-end para a definio dos elementos virtuais, alm de prover ummeio centralizado de controle das instancias virtuais. A figura 9 apresenta o modelo operacional utilizado porambos os softwares.

    Figura 9: Modelo operacional do Dynagen / Dynamips

    O Dynagen, como pode ser observado na figura 9, executado no servidor do laboratrio (Lab Server), eestabelece sesses TCP com as aplicaes Dynamips remotas, que se encontram ativadas em modoHypervisor, nos PCs remotos. As portas lgicas TCP utilizadas para estas conexes podem sermanualmente definidas e, caso no sejam, o Dynamips utiliza a porta TCP 7200, como padro.Vrias instncias de roteadores virtuais podem ser geradas e inicializadas em um mesmo PC. O que limitaeste nmero a quantidade de memria e o poder de processamento do PC em questo. Ao se gerar oarquivo de configurao que ser utilizado pelo Dynagen, define-se quantas sero as instncias emuladas,em quais PCs cada uma delas ser definida e como sero as conexes entre elas. A comunicao entre cadainstncia ocorre por meio do encapsulamento dos datagramas em segmentos UDP, conforme ilustrado na

    figura 9.O arquivo de configurao utilizado pelo Dynagen apresenta a seguinte sintaxe mnima:

    [{endereo IP do servidor Dynamips 1}:{porta TCP}][[{modelo do roteador a ser emulado}]]workingdir = {caminho no servidor remoto onde os arquivos gerados peloDynamips sero armazenados}image= {caminho no servidor remoto para a imagem IOS compatvel com o modelo

    29

  • 7/26/2019 Tutorial Re Decomp 1

    30/45

    definido}ram= {quantidade de memria RAM a ser utilizada para cada instncia}[[ROUTER {nome da instncia 1}]]model= {modelo do roteador}console= {porta TCP a ser utilizada para acesso console}

    {interface local}= {nome da instncia destino} {interface destino}[[ROUTER {nome da instncia n}]][{endereo IP do servidor Dynamips n}:{porta TCP}](O restante segue a mesma estrutura)

    Um exemplo de arquivo funcional apresentado a seguir.

    [192.255.255.5:7200] PC1 / Servidor Dynamips 1[[3620]]workingdir = C:\Arquivos de programas\Dynamips\configsimage = C:\Arquivos de programas\Dynamips\images\c3620-is-mz.123-21.binram = 64[[ROUTER R1]] Instncia 1model = 3620console = 2001s1/0 = R2 s1/0[192.255.255.6:7200] PC2 / Servidor Dynamips 2[[3745]]workingdir = /root/dynamips/configsimage = /root/dynamips/ios/C3745-IS.BIN[[ROUTER R2]] Instncia 2

    model = 3745console = 2002

    A configurao exemplificada gera dois roteadores virtuais (R1, R2), em dois PCs distintos (PC1, PC2). ODynagen pode ser executado em uma terceira mquina, ou em uma das duas mquinas previamentemencionadas. Uma vez iniciado, o Dynagen tenta se conectar aos servidores Dynamips nos endereos IP eportas TCP especificados para cada uma das instncias no arquivo de configurao. O Dynagen, ento,informa aos servidores Dynamips em execuo nos PCs remotos como cada um dos elementos virtuais deveser gerado, e como a conexo entre eles deve ser estabelecida, seguindo o que foi previamente definido noarquivo de configurao. Desta forma, a topologia fsica do ambiente criada. A figura 10 ilustra a topologiaque seria gerada se a configurao funcional anteriormente apresentada fosse, de fato, executada no

    Dynagen, partir de um terceiro PC.

    30

  • 7/26/2019 Tutorial Re Decomp 1

    31/45

    Figura 10: Topologia fsica criada pela configurao Dynagen.

    Caso as portas UDP utilizadas para a comunicao entre a porta Serial 1/0 do roteador R1 e a porta Serial1/0 do roteador R2 no sejam previamente definidas no arquivo de configurao, elas seroautomaticamente definidas pelo Dynagen, iniciando em 10000. O usurio pode acessar cada um doselementos virtuais criados por meio do Dynagen por meio de um acesso console emulado. Para isso, ousurio inicia uma sesso Telnet para um dos PCs remotos, porm, na porta TCP definida no arquivo deconfigurao do Dynagen (192.255.255.5:2001 para o roteador R1 e 192.255.255.6:2002, para o roteadorR2, no exemplo ilustrado).O software emulador permite a comunicao dos elementos virtuais com uma rede fsica. Para isso necessrio associar a interface LAN do elemento virtual com uma interface LAN fsica do PC usado na

    emulao. Isso possvel, pois o software Dynamips utiliza uma biblioteca auxiliar de software (LibPCapem ambientes Linux ou WinPCap, em ambientes Windows) para executar o acesso direto interface fsicade rede do PC, permitindo que o fluxo de dados gerado pelo elemento emulado seja enviado diretamentepara a interface de rede fsica do PC, possibilitando a comunicao do elemento virtual com o meio fsicoreal. O mapeamento deve ocorrer na proporo de 1:1, ou seja, para cada interface Ethernet virtual de umelemento emulado deve-se ter uma interface fsica Ethernet no PC em questo. A figura 11 ilustra oprocesso de operao do Dynamips em conjunto com a biblioteca LibPCap, em um PC executando oSistema Operacional Linux.

    31

  • 7/26/2019 Tutorial Re Decomp 1

    32/45

    Figura 11: Processo de acesso direto interface fsica de rede utilizando o LibPCap.

    Camada 1: Camada do UsurioA Camada do Usurio, na arquitetura proposta, a camada na qual o acesso ao ambiente pelo usurioocorre. Os pr-requisitos para que um usurio acesse o ambiente remotamente so:

    Possuir um PC conectado Internet (ou rede local na qual a estrutura encontra-se implementada);Ter as portas TCP e UDP utilizadas pelos softwares Dynagen e Dynamips, assim como a porta TCP 23(Telnet) liberadas nofirewall(se aplicvel);Ter um navegador web com suporte linguagem Java instalado.

    Figura 12: Camada do Usurio.Para facilitar a integrao da arquitetura proposta com um ambiente de ensino a distncia, prope-se ummtodo nico para viabilizar o acesso remoto: Por meio de um Applet Java, que carregado sob demanda nonavegador web do usurio.O usurio deve digitar em seu navegador web o endereo do laboratrio e, por intermdio de um AppletJavaque ser carregado em seu navegador, ele ter acesso total ao ambiente. Este trabalho sugere apenas ummtodo de acesso, entretanto, muitos mtodos diferentes podem existir. O endereo do laboratrio pode ser

    32

  • 7/26/2019 Tutorial Re Decomp 1

    33/45

    um endereo IP direto, ou um nome, que convertido para um endereo IP, se o ambiente estiverconfigurado para operar desta forma. O AppletJava adotado para esta arquitetura foi o JTA (Java TelnetApplet), desenvolvido por Matthias L. Jugel, em 1996 [JTA, 1996]. O Appletem questo possui arquiteturaaberta, uma configurao bastante simples, e rapidamente carregado no navegador web do usurio,permitindo a emulao de um cliente Telnet dentro de uma pgina web convencional. A figura 13 ilustra a

    integrao do JTA com uma pgina web, e como a interface com o usurio ocorre. No exemplo, quando ousurio clica no roteador R3, uma nova janela na qual o applet carregado - aberta, e o acesso portaconsole do elemento em questo estabelecido.

    Figura 13: Tela do Applet JTA sendo executado no navegador webO cdigo HTML da pgina [B] bastante simples, e contm os parmetros que so passados ao applet paraque a conexo seja estabelecida.

    R3 Tamanho usado pela janela do applet Caminho relativo para o arquivopadro de configurao

    Endereo IP do objetoda conexo Porta TCP na qual a conexoTelnet deve ocorrer

    O processo interativo da conexo entre o usurio e o elemento de ensaio fsico ilustrado pela figura 14,enquanto que o processo para conexo com elementos virtuais representado pela figura 15.

    33

  • 7/26/2019 Tutorial Re Decomp 1

    34/45

    Figura 14: Processo interativo da conexo entre usurio e elemento de ensaio fsico.

    Figura 15: Processo interativo da conexo entre usurio e elemento de ensaio virtual (emulado).A nica diferena entre os dois processos a inexistncia do servidor de consoles para o acesso aoselementos virtuais.

    Camada 2: Camada de Acesso e Gerncia (Infra-estrutura)Nesta camada, os elementos de infra-estrutura, ou seja, todos aqueles que se encontram fora do ambienteexperimental, so definidos e configurados. Estes so os elementos de apoio ao ambiente. Quatro elementosprincipais so definidos nesta camada.

    34

  • 7/26/2019 Tutorial Re Decomp 1

    35/45

    Figura 16: Camada de Infra-EstruturaRoteador de acessoO Roteador de Acesso um dispositivo cujo objetivo prover a conexo entre o ambiente laboratorial e o

    resto do mundo. Nenhuma configurao especfica neste elemento necessria para operao do ambiente.Switch de Infra-estruturaUm comutador simples, cuja nica funo prover a interconexo dos elementos definidos nesta Camada.Nenhuma configurao especfica neste elemento necessria para operao do ambiente.Servidor do LaboratrioO Servidor do Laboratrio (Lab Server) prov os servios necessrios ao acesso, operao e gerenciamentodo ambiente. A princpio, o Lab Server pode ser um PC comum, carregado com praticamente qualquer

    sistema operacional (S.O.) que oferea os servios definidos mais adiante. Na arquitetura proposta,visando-se a conteno de custos, prope-se o uso de uma distribuio Linux. Os servios descritos a seguirso facilmente encontrados em qualquer distribuio deste sistema operacional.

    Firewall e NAT:Como o ambiente proposto deve ser acessvel ao mundo externo, um firewall deveser configurado, bloqueando portas de comunicao que no sero necessrias. A funo de NAT necessria para realizar a traduo dos endereos internos (no roteveis na Internet) para endereosvlidos (roteveis pela Internet), de modo a prover o acesso remoto a todos os componentes dolaboratrio. (OBS: As funes de Firewall e NAT podem ser transferidas para o roteador de acesso ououtro servidor que j possua estas funes em uma rede j operacional).Servidor HTTP: Disponibiliza ao usurio autorizado o acesso ao ambiente por meio de pginas

    HTML. No ambiente proposto, o processo de autenticao do usurio tambm controlado por esteservio, por meio de configuraes nos arquivos .htacess e .htpasswd. Mtodos mais sofisticadosde autenticao podem ser incorporados ao ambiente, porm, estes se encontram fora do escopo destetrabalho.Servidor TFTP:Oferece um ponto central para o armazenamento de configuraes dos elementosfsicos e virtuais.Java Telnet Applet (JTA):Uma pequena aplicao (applet) escrita na linguagem Java capaz deemular terminais remotos de texto. Esta aplicao trabalha em conjunto com o servidor web,permitindo aos usurios o acesso aos dispositivos de ensaio por intermdio de um navegador webcomum. Na essncia, trata-se de um cliente Telnet embutido em uma pgina web. A implementao

    35

  • 7/26/2019 Tutorial Re Decomp 1

    36/45

    desta aplicao implica em conhecer as restries de segurana impostas pelo uso de applets Java. Porexemplo, um applet Java apenas pode estabelecer conexes diretas de rede com mesma mquina deonde este applet foi transferido. No caso, o JTA poderia realizar conexes apenas para o servidor deonde ele foi carregado. Este um fator limitante de grande importncia, j que o objetivo acessarremotamente os elementos de ensaio, e no o prprio servidor. Existem dois mtodos principais para

    contornar esta limitao:Utilizar o NAT para traduzir o par [endereo IP (do prprio servidor, no caso) e porta lgicade comunicao] para o par [endereo IP e porta lgica de comunicao] do objeto de estudo.Um exemplo: Suponhamos que o endereo IP do servidor do laboratrio seja 10.10.10.1, e o IPque desejamos acessar seja 20.20.20.1, na porta 2323. No servioIPTables, cria-se uma regramapeando a combinao [10.10.10.1, 2323] para [20.20.20.1, 2323]. Desta forma, quando ousurio tentar acessar determinado elemento, o JTA tentar uma conexo com o prprioservidor do laboratrio, onde ele se encontra instalado (10.10.10.1), e o servio NAT far oredirecionamento da conexo.Utilizar uma aplicao de apoio ao JTA, chamada Relay Daemon - ou simplesmente relayd- que deve ser instalada no servidor do laboratrio. O JTA, neste caso, deve ser configurado

    para direcionar todas as solicitaes de conexo aplicao relayd que, por sua vez, asredireciona para o IP externo. A operao deste mtodo ilustrada na figura 17.

    Figura 17: Operao do relayd

    Dynamips / Dynagen:O conjunto de softwares responsveis pela emulao e controle dos elementosvirtuais de rede.

    Servidor de ConsolesO servidor de consoles - tambm conhecido como servidor de acesso - um elemento que prov o acessodireto console de um determinado sistema. Normalmente, este tipo de dispositivo prov um nmero deportas seriais que, por sua vez, so conectadas s portas seriais de equipamentos de rede, como roteadores,switches e servidores. Estes equipamentos podem, ento, ser acessados por meio do servidor de consoles,que age como um elemento centralizador para acesso aos elementos de rede, independentemente daconfigurao lgica destes elementos. A principal vantagem em se utilizar um servidor de consoles emum ambiente laboratorial que o equipamento a que ele se conecta no precisa ter nenhuma configuraode rede para ser acessado, ou seja, possvel alterar as configuraes lgicas nestes equipamentos sem a

    36

  • 7/26/2019 Tutorial Re Decomp 1

    37/45

    preocupao de perder o acesso aos mesmos, como aconteceria com um acesso via Telnet, por exemplo.Servidores de consoles comerciais so oferecidos por muitos fabricantes, como Cisco, Avocent, Opengear,Uplogix, Lantronix e Cyclades, para citar alguns. Existe a opo de se criar um servidor de consoles "nocomercial", bastando utilizar um PC com uma certa densidade de portas seriais e uma aplicao que as

    gerencie, como o gratuito Conserver (www.conserver.com). A maior limitao neste tipo deimplementao (no comercial) a baixa densidade de portas seriais oferecidas. Nos modelos comerciais,por exemplo, podemos ter at 48 portas seriais, o que possibilita a conexo serial com at 48 equipamentosdistintos.

    Camada 3: Elementos de EnsaioA camada dos Elementos (Camada 3, na arquitetura proposta) formada por dois mdulos: O Mdulo Fsicoe o Mdulo Virtual.

    Figura 18: Camada dos ElementosO Mdulo Fsico composto por elementos de rede reais, interconectados de forma a oferecer aos docentes

    e discentes o maior nvel de flexibilidade possvel, na confeco e realizao de experimentos. Basicamente,qualquer tipo de dispositivo de rede real independente de qual seja o fabricante - pode ser incorporado aoMdulo Fsico, desde que o propsito seja disponibiliz-lo em um experimento.Exemplos de dispositivos que podem ser agregados a este mdulo:

    RoteadoresComutadores (Switches)Computadores (PCs)Pontos de acesso WI-FITelefones IP

    Como o acesso a estes elementos se dar preferencialmente por meio de uma conexo serial indireta (viaservidor de consoles), existe o pr-requisito que os dispositivos de ensaio possuam ao menos uma portaserial.No Mdulo Virtual, por sua vez, so definidos os elementos no-fsicos que pertencem ao ambiente deensaio. Estes elementos podem ser:

    RoteadoresComutadores (Switches)

    37

  • 7/26/2019 Tutorial Re Decomp 1

    38/45

    Computadores (PCs)

    Dentro da arquitetura proposta por este trabalho, os elementos virtuais so criados sob demanda. Osroteadores virtuais podem ser gerados pelo software Dynamips, que tambm permite a emulao de um

    switch Cisco modelo 2912, por meio de um mdulo (NM-16ESW) inserido em um roteador virtual. Esteswitch virtual pode ser integrado a uma rede fsica real, e suporta a configurao de VLANs eentroncamentos entre VLANs (trunks), assim como configuraes mais sofisticadas, como agrupamento deinterfaces Ethernet (EtherChannel) e QoS.Como alternativa, o software Dynagen permite a simulao de um switch bastante simples, desvinculado doroteador virtual, e que tambm pode ser integrado a uma rede fsica real. A vantagem em se utilizar o switchsimulado ao invs do emulado fica por conta dos recursos (memria e CPU) que so economizados. Emcontrapartida, as funcionalidades do switch simulado so limitadas, se comparadas as do emulado.Dentro da arquitetura proposta, PCs virtuais podem ser criados e integrados ao ambiente por meio de

    softwares especficos, como o VMWare (www.vmware.com) ou o VirtualBox (www.virtualbox.org), sendoeste ltimo de domnio pblico. Outra opo para a gerao de PCs virtuais a utilizao de um simuladorconhecido como Virtual PC Simulator[VPCS], ou simplesmente, VPCS. Este software permite a gerao deat nove PCs virtuais, possibilitando testes com PING e TRACEROUTE dentro da rede experimental. Agrande vantagem do VPCS sobre softwares de virtualizao (como o VMWare e o VirtualBox), que elese integra de forma bastante simples aos elementos virtuais gerados pelo Dynamips e utiliza poucos recursosna mquina onde executado, alm de ser compatvel com os sistemas operacionais Linux e Windows. Aintegrao entre os PCs virtuais criados pelo VPCS e os roteadores emulados pelo Dynamips ocorre pormeio de portas lgicas UDP. Estas conexes devem ser definidas nos arquivos de configurao do Dynagene do VPCS.

    A arquitetura proposta contempla tambm uma forma de gerar fluxos de dados entre dois pontos, dentro deuma topologia experimental, para simular o comportamento da rede sob determinadas situaes. Estagerao de fluxos de dados alcanada por meio da utilizao de um software especfico, conhecido comotraffic-0.1.3 [TRAF], instalado e executado em qualquer PC que possua uma conexo lgica com a redeexperimental. Este software (TRAF) de domnio pblico, e pode ser executado tanto em Linux quanto emWindows.O software opera em modo cliente-servidor, no qual o cliente origina o fluxo de trfego, que tem comodestino o servidor. Portanto, necessria a utilizao de pelo menos dois PCs para gerao de trfego narede experimental. A 19 ilustra o processo.

    38

  • 7/26/2019 Tutorial Re Decomp 1

    39/45

    Figura 19: Simulao de trfego entre dois pontos, atravessando elementos virtuais na redeexperimental

    Viso Detalhada da Arquitetura PropostaA figura 20 apresenta cada um dos componentes de um ambiente baseado na arquitetura proposta por estetrabalho. Usurios internos (localizado dentro das premissas) e externos acessam o laboratrio por meio deum navegador web convencional, exatamente da mesma forma. O Administrador do ambiente tem acessodireto ao servidor de consoles, e pode conectar-se aos elementos fsicos do laboratrio diretamente por meiodele. O Administrador responsvel pela operao do software Dynagen, instalado no Lab Server. Ele ,portanto, o responsvel por gerar o arquivo de configurao, definindo os elementos remotos que serointegrados ao laboratrio. importante ressaltar que o Administrador do ambiente uma figura meramenteilustrativa. No existe a necessidade de alocar um recurso dedicado exclusivamente a esta funo. Cabe aodocente a funo de definir as topologias lgicas para aplicao em sala de aula. Esta topologia pode ser

    apresentada em formato Web, ou em qualquer outro formato que permita aos discentes identificar quais oselementos devem ser manipulados, e como estes devem ser acessados.

    39

  • 7/26/2019 Tutorial Re Decomp 1

    40/45

    Figura 20: Viso completa da Arquitetura Proposta.Limitaes da ArquiteturaA arquitetura proposta possui as seguintes limitaes:

    Um mximo de dois usurios pode acessar um dado dispositivo de ensaio por vez. Esta limitao imposta pelo tipo de acesso escolhido (acesso console), limitado a duas portas (Console e

    Auxiliar, no caso) por dispositivo (real ou virtual);O emulador de roteadores proposto na arquitetura (Dynamips) emula apenas equipamentos dofabricante Cisco, e para tal, necessita do sistema operacional do fabricante (Cisco IOS)compatvel com a plataforma a ser emulada;A interconexo entre elementos fsicos e elementos virtuais apenas pode ocorrer por meio deinterfaces Ethernet. No possvel, por exemplo, interconectar um elemento fsico a umelemento virtual por meio de interfaces seriais ou qualquer outro tipo de interface;A performance oferecida pelos dispositivos emulados inferior a de dispositivos fsicos e, poreste motivo, testes que objetivem