Baixe o app para aproveitar ainda mais
Prévia do material em texto
Disciplina 108537 - Laboratório de Redes de Telecomunicação Curso Engenharia de Redes de Comunicação Professor: Monitor: Valério Aymoré Martins (valerioaymoremartins@gmail.com) Jorge Guilherme Silva dos Santos Experimento 04 - Outros Modelos de Saídas e Editores de Topologias Data/Prazo Entrega do Relatório em 07/05/2016 através do site “campusvirtual. unb.br” 1) Procedimentos a) Quadrado A topologia da Figura 1 é informalmente conhecida como “quadrado”. Figura 1: Topologia "quadrado" Nessa topologia, o objetivo é obter dois fluxos de dados que devem trafegar por caminhos diferentes. Da mesma forma, as respostas a esses fluxos de dados devem seguir os mesmos caminhos, ou seja, os “fluxos de volta devem corresponder aos fluxos de ida”. Na representação da Figura 1, o primeiro fluxo de dados deve seguir o caminho 1à2à 3 (logo, suas respostas devem seguir 3à2 à1) enquanto o segundo fluxo deve seguir o caminho 1à0à3 (respostas em 3à0à1). Portanto, crie a simulação para a topologia descrita. A respeito dessa simulação: i) Utilize a aplicação UDP Echo com característica CBR; ii) Os enlaces devem possuir taxa de 100 Mbps e 1 ms de atraso; iii) Devem ser capturados arquivos PCAP. Sua análise deverá ser incluída no relatório. Os dados gerados nesse arquivo podem ser usados para comprovar o correto funcionamento da simulação da topologia; (dica: Roteamento Estático terá de ser utilizado. Atenção para o fato de serem utilizados dois fluxos de dados por caminhos diferentes. Demais informações estãos no arquivo da Aula 04). b) Gnuplot e Filehelper O GnuPlot é uma ferramenta de código aberto para geração de gráficos. Utilizando pontos especificados em um arquivo de texto, o software é capaz de realizar os plots. Naturalmente, devido à característica textual que tanto o arquivo contendo os dados quanto o arquivo de configuração do GnuPlot possuem, é possível gerar os mesmos de dentro de uma simulação do NS3. Dito isso, baixe e execute os exemplos lab01g e lab01h. A respeito dessas simulações: i) Descreva os eventos; ii) Explique as partes do código que se referem a GnuPlot e FileHelper; iii) Explique como são montados e gravados os arquivos de configuração e os arquivos contendo os dados. c) NetAnim O NetAnim é uma ferramenta para visualização de simulações desenvolvida separadamente da aplicação NS3 principal. Então: i) Simule todos (menos point-to-point-grid.cc) os códigos de exemplo que acompanham a instalação do NS3, mostre e explique o que acontece. Como o NetAnim pode ser proveitoso na visualização e análise dessas simulações. Observação: os códigos do NetAnim se encontram em $NS3_HOME/ns-3.22/src/netanim/examples. ii) Visualize as simulações com o NetAnim. O mesmo pode ser executado (considerando uso de interface gráfica) com: cd $NS3_HOME/netanim-3.105/ ./NetAnim (não há necessidade, nesse caso, de execução com usuário root). iii) Faça com que a simulação do quadrado (1.a) possa ser visualizada pelo NetAnim. Mostre os procedimentos executados para isso e os resultados obtidos. Explique os resultados de cada aba do NetAnim. 2) ndnSIM O ndnSIM é um simulador baseado no NS3 desenvolvido para simulação de redes NDN (Named Data Networking), que é uma implementação de uma rede do tipo ICN (Information Cenctric Network). Mais informações sobre o simulador e o tema NDN são encontrados em: http://ndnsim.net/2.0/doxygen/index.html http://pt.slideshare.net/carlosmscabral/sbrc2013, É pedido: i) Instale o ndnSIM (antes: faça um clone de sua máquina virtual com o NS3 funcional. Em caso de problemas, a máquina original poderá sempre ser usada para os procedimentos do NS3 além de servir como origem do clone utilizado em outras tentativas). ii) Execute o experimento de exemplo que utiliza o arquivo topo-grid-3x3.txt (conforme orientações do arquivo da Aula 04). iii) Altere a simulação para topo-grid-2x2.txt e execute-a. Repita a descrição e análise; iv) Procure pela linha abaixo. Explique o que ela faz e quais são as outras opções possíveis. ndn::StrategyChoiceHelper::InstallAll( "/", "/localhost/nfd/strategy/best-route"); 3) Resultados Para todos os procedimentos solicitados no item 1, devem ser incluídos no relatório os procedimentos necessários para realização da simulação, os resultados obtidos e a interpretação dos mesmos. Descrições sobre os conceitos iniciais básicos utilizados para explicar os resultados deverão também ser incluídos. 4) Extra Estude e resuma os princípios de controle de congestionamento do TCP (para uso na próxima aula). Palavras-chave: ns3 congestion window Trabalhos de Cecilia Urbina no NS3 “TCP-link Congestion Control” Wireshark: https://ask.wireshark.org/questions/27648/how-cani-get-congestion-window-from-traces 5) Anexo: Procedimento de instalação do ndnSIM Os procedimentos de instalação do ndnSIM estão descritos no site oficial. Porém, também serão resumidos a seguir: a) O ndnSIM deve ser compilado manualmente, uma vez que não existem pacotes pré-compilados para ele. Para compilar os pacotes, são necessárias uma série de dependências. Atualize as informações de pacotes dos repositórios e instale as dependências pelo gerenciador de pacotes do Ubuntu (como root): apt-get update apt-get install python-pygoocanvas python-gnome2 python-rsvg ipython python-pygccxml git g++ gccxml libboost-all-dev libsqlite3-dev b) Crie a pasta onde o ndnSIM será instalado e clone dentro dele os repositórios de todas as aplicações que serão utilizadas: cd $NS3_HOME/ns-3.22 mkdir ndnSIM cd ndnSIM git clone https://github.com/named-data/ndn-cxx.git ndn-cxx git clone git://github.com/cawka/ns-3-dev-ndnSIM.git ns-3 git clone git://github.com/cawka/pybindgen.git pybindgen git clone git://github.com/NDN-Routing/ndnSIM.git ns-3/src/ndnSIM c) Compile o ndn-cxx cd ndn-cxx ./waf configure ./waf ./waf install d) Compile o pybindgen cd ../pybindgen ./waf configure ./waf ./waf install e) Compile o ns-3 utilizado pelo ndnSIM cd ../ns-3 ./waf configure –d optimized --enable-examples ./waf ./waf install
Compartilhar