File: introduction.rst

package info (click to toggle)
ns3 3.17%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 95,192 kB
  • ctags: 56,763
  • sloc: cpp: 324,361; python: 291,824; perl: 8,720; ansic: 2,097; xml: 2,000; makefile: 1,447; sh: 458; cs: 89
file content (192 lines) | stat: -rw-r--r-- 10,489 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
.. include:: replace.txt

..
	========================================================================================
	Translated for portuguese by the students of the inter-institutional doctorate program of IME-USP/UTFPR-CM.
	
	Traduzido para o portugus pelos alunos do programa de doutorado inter institucional do Instituto de Matemtica e Estatstica da Universidade de So Paulo --- IME-USP em parceria com a Universidade Tecnolgica Federal do Paran - Campus Campo Mouro --- UTFPR-CM:
	
	* Frank Helbert (frank@ime.usp.br);
	* Luiz Arthur Feitosa dos Santos (luizsan@ime.usp.br);
	* Rodrigo Campiolo (campiolo@ime.usp.br).
	========================================================================================


Introduo 
-----------


..
	The |ns3| simulator is a discrete-event network simulator targeted 
	primarily for research and educational use.  The 
	`ns-3 project
	<http://www.nsnam.org>`_, 
	started in 2006, is an open-source project developing |ns3|.

O |ns3|  um simulador de redes baseado em eventos discretos desenvolvido especialmente para pesquisa e uso educacional. O `projeto ns-3 <http://www.nsnam.org>`_ iniciou em 2006 e tem seu cdigo aberto.


..
	The purpose of this tutorial is to introduce new |ns3| users to the 
	system in a structured way.  It is sometimes difficult for new users to
	glean essential information from detailed manuals and to convert this
	information into working simulations.  In this tutorial, we will build 
	several example simulations, introducing and explaining key concepts and
	features as we go.

O objetivo deste tutorial  apresentar o |ns3| de forma estruturada aos usurios iniciantes. Algumas vezes torna-se difcil obter informaes bsicas de manuais detalhados e converter em informaes teis para as simulaes. Neste tutorial so ilustrados vrios exemplos de simulaes, introduzindo e explicando os principais conceitos necessrios ao longo do texto.

..
	As the tutorial unfolds, we will introduce the full |ns3| documentation 
	and provide pointers to source code for those interested in delving deeper
	into the workings of the system.

A documentao completa do |ns3| e trechos do cdigo fonte so apresentados para os interessados em aprofundar-se no funcionamento do sistema.

.. 
	A few key points are worth noting at the onset:

Alguns pontos importantes para se observar:

.. 
	* Ns-3 is not an extension of `ns-2
	<http://www.isi.edu/nsnam/ns>`_; 
	it is a new simulator.  The two simulators are both written in C++ but 
	|ns3| is a new simulator that does not support the ns-2 APIs.  Some 
	models from ns-2 have already been ported from ns-2 to |ns3|. The 
	project will continue to maintain ns-2 while |ns3| is being built,
	and will study transition and integration mechanisms.

* O |ns3| no  uma extenso do ns-2; O |ns3|  um simulador novo. Ambos so escritos em C++, mas o |ns3|  totalmente novo e no suporta as APIs da verso anterior. Algumas funcionalidades do ns-2 j foram portadas para o |ns3|. O projeto continuar mantendo o ns-2 enquanto o |ns3| estiver em fase de desenvolvimento e formas de integrao e transio esto em estudo.

..
	* |ns3| is open-source, and the project strives to maintain an 
	open  environment for researchers to contribute and share their software. 

* O |ns3|  cdigo aberto e existe um grande esforo para manter um ambiente aberto para pesquisadores que queiram contribuir e compartilhar software com o projeto.
 
.. 
	For ns-2 Users

Para os usurios do ns-2
*************************

..
	For those familiar with ns-2, the most visible outward change when moving to 
	|ns3| is the choice of scripting language.  Ns-2 is 
	scripted in OTcl and results of simulations can be visualized using the 
	Network Animator nam.  It is not possible to run a simulation
	in ns-2 purely from C++ (i.e., as a main() program without any OTcl).
	Moreover, some components of ns-2 are written in C++ and others in OTcl.
	In |ns3|, the simulator is written entirely in C++, with optional
	Python bindings.  Simulation scripts can therefore be written in C++
	or in Python.  The results of some simulations can be visualized by
	nam, but new animators are under development.  Since |ns3|
	generates pcap packet trace files, other utilities can be used to
	analyze traces as well.
	In this tutorial, we will first concentrate on scripting 
	directly in C++ and interpreting results via trace files.  

Para aqueles familiarizados com o ns-2 a mudana mais visvel  a escolha da linguagem de codificao (*scripting*). O ns-2 utiliza a linguagem OTcl e os resultados das simulaes podem ser visualizados utilizando o *Network Animator - nam*. Entretanto, no  possvel executar uma simulao escrita inteira em C++ no ns-2 (por exemplo, com um ``main()`` sem nenhum cdigo OTcl). Assim sendo, no ns-2 alguns componentes so escritos em C++ e outros em OTcl. No |ns3|, todo o simulador  escrito em C++ com suporte opcional a Python. Desta forma, os cdigos de simulao podem ser escritos somente em C++ ou Python. Os resultados de algumas simulaes podem ser visualizados pelo *nam*, mas novas formas de visualizao esto sendo desenvolvidas. O |ns3| gera arquivos de rastreamento de pacotes *(packet trace)* no formato *pcap*, assim,  possvel utilizar outras ferramentas para a anlise de pacotes. Neste tutorial iremos nos concentrar inicialmente nos cdigos de simulao escritos em C++ e na interpretao dos pacotes nos arquivos de rastreamento.

..
	But there are similarities as well (both, for example, are based on C++ 
	objects, and some code from ns-2 has already been ported to |ns3|).
	We will try to highlight differences between ns-2 and |ns3|
	as we proceed in this tutorial.

Tambm existem semelhanas entre o ns-2 e o |ns3|. Ambos, por exemplo, so orientados a objeto e parte do cdigo do ns-2 j foi portado para o |ns3|. As diferenas entre as verses sero destacadas ao longo deste tutorial.

..
	A question that we often hear is "Should I still use ns-2 or move to
	|ns3|?"  The answer is that it depends.  |ns3| does not have
	all of the models that ns-2 currently has, but on the other hand, |ns3|
	does have new capabilities (such as handling multiple interfaces on nodes 
	correctly, use of IP addressing and more alignment with Internet
	protocols and designs, more detailed 802.11 models, etc.).  ns-2
	models can usually be ported to |ns3| (a porting guide is under
	development).  There is active development on multiple fronts for 
	|ns3|.  The |ns3| developers believe (and certain early users
	have proven) that |ns3| is ready for active use, and should be an 
	attractive alternative for users looking to start new simulation projects.  

Uma questo que frequentemente aparece : "Eu devo continuar usando o ns-2 ou devo migrar para o |ns3|?". A resposta : depende. O |ns3| no tem todos os modelos do ns-2, contudo, possui novas funcionalidades (tais como: trabalha corretamente com ns de rede com mltiplas interfaces de rede (por exemplo, computadores com vrias placas de rede), usa endereamento IP,  mais consistente com arquiteturas e protocolos da Internet, detalha mais o modelo 802.11, etc.). Em todo o caso, os modelos do ns-2 podem ser portados para o |ns3| (um guia est em desenvolvimento). Atualmente existem vrias frentes de trabalho para o desenvolvimento do simulador. Os desenvolvedores acreditam (e os primeiros usurios concordam) que o |ns3| est pronto para o uso e  uma tima alternativa para usurios que querem iniciar novos projetos de simulao.

.. 
	Contributing

Contribuindo
************

.. 
	|ns3| is a research and educational simulator, by and for the 
	research community.  It will rely on the ongoing contributions of the 
	community to develop new models, debug or maintain existing ones, and share 
	results.  There are a few policies that we hope will encourage people to 
	contribute to |ns3| like they have for ns-2:

O |ns3|  um simulador para pesquisas e de uso educacional, feito por e para pesquisadores. Este conta com contribuies da comunidade para desenvolver novos modelos, corrigir erros ou manter cdigos e compartilhar os resultados. Existem polticas de incentivo para que as pessoas contribuam com o projeto, assim como foi feito no ns-2, tais como:

.. 
	* Open source licensing based on GNU GPLv2 compatibility

* Licena de cdigo aberto compatvel com GNU GPLv2;

* `Wiki	<http://www.nsnam.org/wiki/index.php>`_;

.. 
	* `Contributed Code
	<http://www.nsnam.org/wiki/index.php/Contributed_Code>`_ page, similar to ns-2's popular Contributed Code
	`page
	<http://nsnam.isi.edu/nsnam/index.php/Contributed_Code>`_ 

* Pgina para `contribuio com o cdigo <http://www.nsnam.org/wiki/index.php/Contributed_Code>`_, similar a pgina de contribuio do `ns-2 <http://nsnam.isi.edu/nsnam/index.php/Contributed_Code>`_;

.. 
	* Open `bug tracker
	<http://www.nsnam.org/bugzilla>`_

* `Registro de erros (bugs) <http://www.nsnam.org/bugzilla>`_ aberto.

..
	We realize that if you are reading this document, contributing back to 
	the project is probably not your foremost concern at this point, but
	we want you to be aware that contributing is in the spirit of the project and
	that even the act of dropping us a note about your early experience 
	with |ns3| (e.g. "this tutorial section was not clear..."), 
	reports of stale documentation, etc. are much appreciated. 

Se voc est lendo este documento, provavelmente contribuir diretamente no seja o foco neste momento, mas esteja ciente que contribuir est no esprito do projeto, mesmo que seja deixando uma mensagem descrevendo suas experincias com o |ns3| (por exemplo, voc pode relatar qual seo deste tutorial no esta clara), reportar a desatualizao da documentao, etc. Toda ajuda ser muita bem vinda.

.. 
	Tutorial Organization

Organizao do Tutorial
***********************

..
	The tutorial assumes that new users might initially follow a path such as the
	following:

Este tutorial assume que os novos usurios podem iniciar da seguinte forma:

.. 
	* Try to download and build a copy;

* Baixar e compilar uma cpia do |ns3|;

.. 
	* Try to run a few sample programs;

* Executar alguns programas exemplo;

.. 
	* Look at simulation output, and try to adjust it.

* Analisar as sadas de simulao e ajust-las.

.. 
	As a result, we have tried to organize the tutorial along the above
	broad sequences of events.

Assim, tentamos organizar este tutorial nesta sequncia.