Simulador de Redes NS (Network Simulator)



Documentos relacionados
Tutorial de NS-2. Lucas Coelho Gonçalves e Marcos Estevo de Oliveira Corrêa

Curso de Introdução Prática ao Simulador de Redes NS-2

Aula de introdução ao NS-2

Arquitectura de Redes 2004/05

Network Simulator: Introdução a Simulação das Redes de Computadores. Quem sou eu...

Modelagem e Avaliação de Desempenho. Pós Graduação em Engenharia Elétrica - PPGEE Prof. Carlos Marcelo Pedroso 2011

Modelagem e Avaliação de Desempenho. Pós Graduação em Engenharia Elétrica - PPGEE Prof. Carlos Marcelo Pedroso 2013

NS-2 Network Simulator

Network Simulator Visão Geral da Ferramenta de Simulação de Redes

Modelagem e Avaliação de Desempenho. Pós Graduação em Engenharia Elétrica - PPGEE Prof. Carlos Marcelo Pedroso 2016

Análise do Escalonamento de Redes Ad Hoc IEEE através de medidas de Vazão e Atraso usando o NS-2

UNIVERSIDADE FEDERAL DO PARANÁ LUIS EDUARDO PEREIRA BUENO ESTUDO DO DESEMPENHO DO PROTOCOLO TCP EM REDES SEM FIO

APÊNDICE A. O simulador NS-2. A.1 Características principais

Network Simulator ns2

Redes de Computadores Aula 3

Redes TCP/IP. Prof. M.Sc. Alexandre Fraga de Araújo. INSTITUTO FEDERAL DO ESPÍRITO SANTO Campus Cachoeiro de Itapemirim

REDES DE COMPUTADORES

Análise do Comportamento das Variações do Protocolo TCP

Modelagem e Avaliação de Desempenho. Pós Graduação em Engenharia Elétrica - PPGEE Prof. Carlos Marcelo Pedroso 2018

PAULO ROBERTO DE ALMEIDA VALIDAÇÃO DE MODELO MATEMÁTICO PARA VERIFICAÇÃO DO COMPORTAMENTO DO PROTOCOLO TCP EM REDES ASSIMÉTRICAS

Teleprocessamento e Redes (MAB-510) Gabarito da Segunda Lista de Exercícios 01/2010

3 Qualidade de serviço na Internet

COMPORTAMENTO DO ESCALONAMENTO DE REDES INFRAESTRUTURADA ATRAVÉS DE MÉTODOS COMPUTACIONAIS

O Avanço da Tecnologia de Comunicação com o Uso de Simulador para a Modelagem em Redes Mistas Cabeadas e Sem Fio

Criação de Cenários e Ambientes Sem Fio

AULA 01 INTRODUÇÃO. Eduardo Camargo de Siqueira REDES DE COMPUTADORES Engenharia de Computação

Centro Tecnológico de Eletroeletrônica César Rodrigues. Atividade Avaliativa

Traceroute É uma ferramenta de diagnóstico que rastreia a rota de um pacote através de uma rede de computadores e que utiliza os protocolos IP e ICMP.

Cap 01 - Conceitos Básicos de Rede (Kurose)

Redes de Computadores e a Internet

Fernando Albuquerque - fernando@cic.unb.br REDES LAN - WAN. Fernando Albuquerque (061) fernando@cic.unb.br

3 Ferramenta de Simulação

ncia de Redes NGN - NEXT GENERATION NETWORK Hugo Santana Lima hugosl@nec.com.br Porque Telefonia IP?

Capítulo 7 CAMADA DE TRANSPORTE

Protocolos Hierárquicos

2 Controle de Congestionamento do TCP

Redes de Computadores I Licenciatura em Eng. Informática e de Computadores 1 o Semestre, 26 de Outubro de o Teste A

GUILHERME STELLA RAVAGNANI SIMULAÇÃO DO IP MÓVEL VIA NETWORK SIMULATOR (NS2): UMA PROPOSTA DE REDE WIRELESS

Revisão. Karine Peralta

Redes de Computadores

NETWORK SIMULATOR Guia Básico para Iniciantes

REDES DE COMPUTADORES Prof. Ricardo Rodrigues Barcelar

APLICAÇÃO REDE APLICAÇÃO APRESENTAÇÃO SESSÃO TRANSPORTE REDE LINK DE DADOS FÍSICA 1/5 PROTOCOLOS DE REDE

Redes de Computadores. Camada de Transporte

Informática I. Aula Aula 22-03/07/06 1

Márcio Leandro Moraes Rodrigues. Frame Relay

MANUAL DE INSTALAÇÃO E PROGRAMAÇÃO CONVERSOR - IP / USB / SERIAL RV1

Capítulo 5: EVOLUÇÃO DAS REDES

Implementação de QoS em um roteador Linux

A Camada de Transporte

Redes de Computadores II INF-3A

UNIVERSIDADE FEDERAL DE SANTA CATARINA DEPARTAMENTO DE INFORMÁTICA E ESTÁTISTICA GRADUAÇÃO EM CIÊNCIAS DA COMPUTAÇÃO DISCIPLINA: COMUNICAÇÃO DE DADOS

Protocolo. O que é um protocolo? Humano: que horas são? eu tenho uma pergunta

Camada de Transporte TCP/IP e Aplicação

Redes de Computadores

The Pragmatic Answer: Managed Unfairness

REDES DE COMPUTADORES Prof. Ricardo Rodrigues Barcelar

Sumário. Referências. Network Simulator 2. Network Simulator 2. Network Simulator 2. Sistemas Telemáticos O Network Simulator 2 (NS2)

Redes de Computadores

General Packet Radio Service (GPRS) Aluna: Marília Veras

Foi inicialmente desenvolvido como parte de um

Redes WAN. Redes de Longa Distância Prof. Walter Cunha

Mobilidade em Redes

Camada Transporte Parte 2. Prof. Dr. S. Motoyama

MÓDULO 8 Modelo de Referência TCP/IP

Estudo comparativo entre dois tradicionais algoritmos de roteamento: vetor distância e estado de enlace.

Há dois tipos de configurações bidirecionais usados na comunicação em uma rede Ethernet:

Redes de Computadores II


NETALARM GATEWAY Manual Usuário

Jones Bunilha Radtke. Tarefas:

Fundamentos de Redes de Computadores. Elementos de Redes Locais

Protocolo TCP/IP. Protocolo TCP/IP. Protocolo TCP/IP. Protocolo TCP/IP. Conexão de Redes. Protocolo TCP/IP. Arquitetura Internet.

Protocolo Ethernet e Dispositivos de Interconexão de LANs

Sistemas Distribuídos Capítulos 3 e 4 - Aula 4

Ferramentas Livres para Monitoramento de Redes

Curso: Redes II (Heterogênea e Convergente) Tema da Aula: Controle de Congestionamento

AULA 03 MODELO OSI/ISO. Eduardo Camargo de Siqueira REDES DE COMPUTADORES Engenharia de Computação

Visão geral da arquitetura do roteador

Redes de computadores e a Internet. Capitulo 4. Capítulo. A camada de rede


Redes de computadores. Redes para Internet

Qualidade de serviço. Determina o grau de satisfação do usuário em relação a um serviço específico Capacidade da rede de atender a requisitos de

Redes de Computadores

Sockets. Bruno Guimarães Lucas Rossini

Redes de Computadores. Protocolos de comunicação: TCP, UDP

Gerenciamento de redes

Redes de Computadores

Prof. Marcelo Machado Cunha Parte 3

Redes de Computadores I Internet - Conceitos

Estudo Experimental da Tecnologia MPLS: Avaliação de Desempenho, Qualidade de Serviço e Engenharia de Tráfego

Protocolo CAN Controller Area Network

Prof. Manuel A Rendón M

INTRODUÇÃO ÀS REDES DE COMPUTADORES

Redes de Computadores

Redes de Computadores e a Internet

Tópicos Especiais em Redes Alta Performance. Paulo Aguiar DCC/UFRJ

Transcrição:

Laboratório de Sistemas Distribuídos Simulador de Redes NS (Network Simulator) Prof. Ana Cristina Barreiras Kochem cristina@dainf.cefetpr dainf.cefetpr.br http://www.lasd.cefetpr.br Programa de Pós-graduação em Engenharia Elétrica e Informática Industrial. Centro Federal de Educação Tecnológica do Paraná. Av. Sete de Setembro, 3165. Curitiba PR. Brasil. Agentes em NS Representam endpoints onde pacotes da camada de rede são construídos ou consumidos; Funções: Roteamento, transmissão e recepção de pacotes TCP ou UDP. Alguns exemplos de agentes: TCP (transmissor) X TCPSink (receptor) UDP (transmissor) X Null (receptor) LossMonitor: implementado em um nó receptor para obter estatísticas sobre dados recebidos. 2

Agentes em NS Criação de um agente TCP em OTcl: set tcp [new Agent/TCP] $tcp set fid_ 1 $tcp set prio_ 1 $tcp set window_ 1024 $tcp set packetsize_ 500 # Cria agente transmissor # ID do fluxo dos pacotes IP # Prioridade do fluxo # Tamanho da janela # Tamanho do pacote $ns_ attach-agent $n0 $tcp # Anexa transmissor ao nó 0 set sink [new Agent/TCPSink] # Cria agente receptor $ns_ attach-agent $n1 $sink # Anexa receptor ao nó 1 $ns_ connect $tcp $sink # Estabelece a conexão TCP 3 Links e Filas Link unidirecional/bidirecional entre os nós <n0> e <n1>: $ns_ <simplex-link/duplex-link> <n0> <n1> <largura_de_banda> <retardo> <disciplina_escalonamento_fila> Exemplos de disciplinas de escalonamento de filas: Drop-tail ou FIFO (First-In-First-Out); FQ (Fair Queueing); SFQ (Stochastic Fair Queueing); DRR (Deficit Round Robin); RED (Random Early-Detection Gateways) CBQ (Class-Based Queueing). 4

Geradores de Tráfego Application/Traffic/Exponential Exponential On/Off Application/Traffic/Pareto Pareto On/Off packetsize_ Tamanho constante dos pacotes gerados burst_time_ Tempo médio on para o gerador idle_time_ Tempo médio off para o gerador rate_ Taxa constante de envio de pacotes durante períodos on Application/Traffic/CBR Constant Bit Rate packetsize_ Tamanho constante dos pacotes gerados rate_ Taxa constante de envio de pacotes interval_ Intervalo entre pacotes (opcional) Application/Traffic/Trace Gera tráfego de acordo com um arquivo trace. Cada registro contém dois campos de 32 bits contendo: Tempo de interchegada de pacotes (microssegundos); Tamanho do próximo pacote gerado (bytes) set tfile [new Tracefile] $tfile filename example-trace set t1 [new Application/Traffic/Trace] $t1 attach-tracefile $tfile 5 Aplicações Simuladas em NS Application/FTP Aplicação para transferência de arquivos Application/Telnet Aplicação para acesso remoto Variável interval_ Se interval_ = 0, os tempos de interchegada entre os pacotes são escolhidos de acordo com uma distribuição exponencial. Se interval_ 0, os tempos de interchegada entre os pacotes são escolhidos randomicamente de acordo com uma distribuição tcplib. Transmissão dos pacotes é controlada pelo algoritmo de controle de fluxo e congestionamento do protocolo TCP. 6

ftp cbr tcp udp n0 n1 Nó Fonte de Tráfego Link Agente 2 Mbps, 10 ms n2 2 Mbps, 10 ms Tamanho pacote = 1000 bytes Taxa de transmissão = 1 Mbps uma Rede Fixa 1,7 Mbps, 20 ms n3 CBR FTP sink null 1 2 5 7 ns-simple.tcl t (s) 7 uma Rede Fixa CBR FTP 8

uma Rede Fixa Link 0-2 1-2 2-3 9 Arquivo trace e AWK para análise de simulações Evento Tempo do nó para nó Tipo Tamanho flags (s) pacote Pacote (bytes) fid Endereço fonte Endereço Número destino seqüência r 1.3556 0 2 tcp 30 -------- 1 0.0 3.0 29 19 ID do pacote Tipos de eventos: r: recebe +: enqueue -: dequeue d: descarta Arquivo trace Arquivo AWK Resultado AWK awk -f EstatTrace.awk out1.tr > res.awk 10

Agente Loss_Monitor Variáveis: nlost_ Número de pacotes perdidos; npkts_ Número de pacotes recebidos; bytes_ Número de bytes recebidos; lastpkttime_ Tempo no qual o último pacote foi recebido. Agente Loss Monitor Resultados_CBR Resultados_Exponencial 11 Agente Loss_Monitor Exercício: Utilizar o cenário do arquivo ns-simple.tcl Anexar um agente Loss_Monitor ao destino do fluxo CBR Número máximo de pacotes na fila: 10 Obter o número de pacotes perdidos pelo fluxo CBR Comparar resultado com o arquivo res.awk Exercício Loss Monitor 12

Objeto Monitor_Queue Monitoramento de Filas set qmon [$ns monitor-queue $n2 $n3 [open qm.tr w] 1] [$ns link $n2 $n3] queue-sample-timeout Argumentos: 1. Link onde a fila está localizada; 2. Arquivo de saída onde os dados serão armazenados; 3. Freqüência na qual a fila será monitorada (segundos). Monitora_Fila 13 Monitoramento de Filas Objeto Monitor_Queue Saída_Monitor_Queue 1. Tempo; 2. Nós de entrada e saída que definem a fila; 3. Tamanho da fila em bytes (size_); 4. Tamanho da fila em pacotes (pkts_); 5. Total de pacotes de entrada na fila (parrivals_); 6. Total de pacotes que partiram da fila (não descartados) (pdepartures_); 7. Total de pacotes descartados na fila (pdrops_); 8. Total de bytes contido nos pacotes de entrada (barrivals_); 9. Total de bytes que partiram da fila (bdepartures_); 10. Total de bytes descartados na fila (bdrops_). 14

Monitoramento de Fluxos Flow_Monitor Similar ao Queue_Monitor, porém obtém dados por fluxo: arrivals_ (pacotes/bytes); Flow_Monitor departures_ (pacotes/bytes); drops_ (pacotes/bytes). Result_FTP Result_CBR 15 simple-wireless.tcl # Definição dos componentes da rede set val(chan) Channel/WirelessChannel ; # Tipo do canal set val(prop) Propagation/TwoRayGround ; # Tipo do modelo de propagação set val(ant) Antenna/OmniAntenna ; # Tipo da antena set val(ll) LL ; # Tipo da camada de link set val(ifq) Queue/DropTail/PriQueue ; # Tipo da disciplina de escalonamento set val(ifqlen) 50 ; # Número máximo de pacotes na fila set val(netif) Phy/WirelessPhy ; # Tipo de interface de rede set val(mac) Mac/802_11 ; # Tipo da Camada MAC set val(rp) DSDV ; # Protocolo de roteamento ad-hoc usado pelos nós móveis set val(nn) 2 ; # Número de nós móveis 16

simple-wireless.tcl # Criação da instância do simulador set ns_ [new Simulator] # Abre arquivo trace para gravar dados da simulação e chama o procedimento trace-all set tracefd [open simple.tr w] $ns_ trace-all $tracefd # Cria área de movimentação dos nós móveis (x=500, y=500) $topo load_flatgrid 500 500 # Cria o objeto GOD (General Operations Director) armazena informações globais sobre o estado do ambiente, rede ou nós create-god $val(nn) 17 simple-wireless.tcl # Configuração dos nós da rede antes da criação $ns_ node-config - adhocrouting $val(rp) - lltype $val(ll) - mactype $val(mac) - ifqtype $val(ifq) - ifqlen $val(ifqlen) - anttype $val(ant) - proptype $val(prop) - phytype $val(netif) - topoinstance $topo - channeltype $val(chan) - agenttrace ON - routertrace - mactrace ON OFF - movementtrace OFF 18

simple-wireless.tcl # Criação dos dois nós móveis for { set i 0 } { $i < $val(nn) } { incr i } { set node_($i) [ $ns_ node ] $node_($i) random-motion 0 ; # desabilita movimento randômico } # Posição inicial dos nós lados opostos $node_(0) set X_ 5.0 $node_(0) set Y_ 2.0 $node_(0) set Z_ 0.0 $node_(1) set X_ 390.0 $node_(1) set Y_ 385.0 $node_(1) set Z_ 0.0 19 simple-wireless.tcl # Movimento dos nós # No tempo 50s, nó 1 começa a se mover em direção ao nó 0 # destino (x=25, y=20) a uma velocidade de 15m/s. $ns_ at 50.0 $node_(1) setdest 25.0 20.0 15.0 $ns_ at 10.0 $node_(0) setdest 20.0 18.0 1.0 # Nó 1 começa a se afastar do nó 0 $ns_ at 100.0 $node_(1) setdest 490.0 480.0 15.0 20

simple-wireless.tcl # Configuração do fluxo de tráfego entre os dois nós: # Conexão UDP entre os nós 0 e 1 set udp [ new Agent/UDP ] $ns_ attach-agent $node_(0) $udp set null [ new Agent/Null ] $ns_ attach-agent $node_(1) $null $ns_ connect $udp $null # Cria uma fonte de tráfego CBR set cbr [ new Application/Traffic/CBR ] $cbr attach-agent $udp $cbr set packetsize_ 500 $cbr set interval_ 0.005 $cbr attach-agent $udp $ns_ at 10 $cbr start $ns_ at 149 $cbr stop 0 udp cbr null 1 21 simple-wireless.tcl # Término simulação for { set i 0 } { $i < $val(nn) } { incr i } $ns_ at 5.0 $node_($i) reset ; } $ns_ at 150.01 stop $ns_ at 150.02 puts \ NS EXITING... \ ; $ns_halt proc stop {} { global ns_tracefd close $tracefd } puts Starting Simulation... # Executa Simulação $ns_ run Simple_wireless.tcl Trace 22

wireless_wired.tcl Redes Wired_Wireless Wireless F(0) F(1) Domínio Fixo Estação Base BS(0) Atua como um gateway entre os 2 domínios M(0) M(1) Domínio Sem Fio M(2) wireless_wired.tcl Trace 23 Referências Bibliográficas The VINT Project. The Network Simulator ns-2: Documentation. UC Berkeley. Disponível em: <http://www.isi.edu/nsnam/ns/nsdocumentation.html>. Acesso em: 10 setembro 2001. Chung, Jae; Claypool, Mark. NS by Example. Disponível em: <http://nile.wpi.edu/ns/>. Acesso em: 20 novembro 2001. 24