Simulador Ns-2
Artigo: Simulador Ns-2. Pesquise 862.000+ trabalhos acadêmicosPor: katxi • 23/2/2014 • 3.117 Palavras (13 Páginas) • 564 Visualizações
THE NETWORK SIMULATOR - NS-2 E APLICAÇÕES
Ana Catarina Ângelo
UERN-Universidade Estadual do Rio Grande do Norte
DCC – Departamento de Ciência da Computação
katarinapgs@hotmail.com
Abstract. This article aims mainly to show the simulation tool of the computer network, called Network Simulator (NS-2). We will make a general approach to their duties, applications addressing also its operation and features that is of paramount importance. At the end of our work will be presented all stages of preparation for the simulation of a simple model in NS-2, as well as installing it.
Resumo. Este artigo objetiva, principalmente, mostrar a ferramenta de simulação das redes de computadores, denominado Network Simulator (NS-2). Faremos uma abordagem geral de suas atribuições, aplicações abordando também seu funcionamento e características que é de suma importância. No termino do nosso trabalho será apresentadas todas as etapas de preparação para simulação de um modelo simples no NS-2, assim como a instalação do mesmo.
1. INTRODUÇÃO:
Este trabalho tem o objetivo de difundir os conhecimentos do grupo e da turma a respeito de um tema bastante utilizado e de grande importância no mundo da informática: Network Simulator (NS-2).
Durante a fase de elaboração, o grupo procurou abordar o assunto com cuidado a simplificar o entendimento do mesmo. Dessa forma, a sensação de dever cumprido foi evidente por termos nosso objetivo alcançado.
Dentre os simuladores de domínio publico e efetivamente utilizados na simulação de construção de redes cabeadas e sem fio, destaca-se o Network Simulator, conhecido como NS é um dos sistemas mais utilizados em redes de computadores a sua primeira versão foi desenvolvida em 1989 e é uma variante do Real Network Simulator. Hoje a versão atual é a terceira, que foi desenvolvida na Universidade de Berkley usando as linguagens C++ e TCL.
2. DESCRIÇÃO DO SIMULADOR:
O Network Simulator é um software que simula redes e que permite desde a simulação de sistemas simples até sistemas de redes de computadores complexas. Como também é um simulador de eventos discretos, direcionado para pesquisas em redes de computadores.
O NS é um simulador de redes dirigido a eventos que simula vários tipos de redes IP. Ele pode trabalhar simulando protocolos de rede como o TCP e o UDP, comportamento de tráfego em FTP, Telnet, Web, CRB e VBR, algoritmos de roteamento estáticos e dinâmicos. A programação no NS é feita em duas linguagens como C++ para estrutura básica e OTCL que é uma linguagem de interpretada, desenvolvida pelo MIT. Nela serão efetivamente escritas as simulações. O motivo para utilização de duas linguagens de programação baseia-se em duas diferentes necessidades. Existe a necessidade de uma linguagem mais robusta para a manipulação de bytes, pacotes e para implementar os algoritmos que rodem um grande conjunto de dados. Nesse contexto C++, que é uma linguagem compilada e de uso tradicional, mostrou-se a mais eficaz. E como a um desgaste muito grande se a cada mudança de parâmetro, e eles são muitas em uma simulação, houvesse a necessidade de se compilar o programa para testá-lo, o uso da linguagem OTCL, que é interpretada, evita esse desgaste por parte do usuário, pois há uma simplificação no processo interativo de mudar e reexecutar o modelo.
Uma grande vantagem do Network Simulator (NS-2) está no fato de ele ser totalmente gratuito e com código fonte aberto, o que permite ao usuário fazer ajustes que precisar. O NS-2 oferece suporte á simulação de um grande número de tecnologias de rede com fios e sem fios, diferentes cenários baseados nos protocolos TCP e UDP, como já tinha citado no texto acima, como também diversas politicas de fila, caracterização de tráfego com diversas distribuições estatísticas e muito mais.
A operação básica do ns está ilustrada na figura 1.
Figura 1: Esquema de utilização do NS.
A figura 1 [CHUNG 2003], demonstra uma visão simplificada do usuário, o NS é um interpretador de script Tlc orientado a objeto (OTcl). Esta biblioteca contém objetos de escalonamento de eventos, objetos de componentes de rede e módulos de ajuda de configuração de rede. Em outras palavras, para utilizar o NS, se programa em OTcl.
3. CAMADA DE REDE E ROTEAMENTO:
No NS para que ocorra a transferência de pacotes de um nó emissor para um nó receptor existe a necessidade de se determinar que caminho os pacotes devem seguir. Essa tarefa é realizada na camada de rede, mais especificamente pelos protocolos de roteamento da camada de rede. O núcleo do protocolo de roteamento é o algoritmo de roteamento, que tem como função determinar uma rota adequada entre a origem e o destino dos datagramas. O NS permite a simulação de vários protocolos de roteamento, dos quais serão mostrados os que são mais utilizados na atualidade, como o roteamento estático e os algoritmos dinâmicos, chamados de vetor distância e estado enlace.
3.2.1. Roteamento Unicast
Esse tipo de roteamento é utilizado na comunicação ponto-a-ponto, quando um emissor cria um canal de comunicação separado para cada destinatário. Por exemplo, se a transmissão é feita entre um emissor e três destinatários, o emissor enviará três vezes o mesmo arquivo, um para cada destinatário. Quando analisamos como esta comunicação é feita, percebemos que há uma sobrecarga do emissor. À medida que o número de receptores aumenta, o congestionamento e o atraso de dados ficarão mais intensos.
3.2.1.1. Estático
No roteamento estático as rotas não mudam com muita frequência e na maioria das vezes uma mudança é ocasionada pela intervenção humana. O roteamento estático é o mecanismo de definição de rotas padrão no NS, que utiliza o algoritmo SPF (Shortest Path First) de Dijkstra. A computação das rotas é feita uma única vez no início da simulação e para que isso seja possível, o algoritmo utiliza uma matriz de adjacências e valores de custos de todos os enlaces da topologia.
3.2.1.2. Dinâmico
Já no roteamento dinâmico as rotas podem ser alteradas quando há mudanças nas cargas de tráfegos ou na topologia de rede. Esses algoritmos podem rodar periodicamente ou
...