Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Outline
Introduccin
Primer ejemplo de ns3. Enlace punto a punto.
Segundo ejemplo de ns3. Dos nodos inalmbricos en
configuracin ad hoc
Simulacin de Protocolos de
Enrutamiento para MANET con Loja - 2014 2
ns-3
Qu podemos simular en ns3?
Simulacin de Protocolos de
Enrutamiento para MANET con Loja - 2014 3
ns-3
Simulacin de Protocolos de
Enrutamiento para MANET con Loja - 2014 4
ns-3
Estructura de un programa en ns3
Ejemplo. scratch-simulator.cc
#include "ns3/core-module.h" Cabecera tpica de C
NS_LOG_COMPONENT_DEFINE
("ScratchSimulator"); Se utiliza para habilitar/deshabilitar mensajes por
consola
Cmo se ejecuta?
./waf --run scratch/scratch-simulator
Simulacin de Protocolos de
Enrutamiento para MANET con Loja - 2014 5
ns-3
Mensajes de logs
o $ export NS_LOG=UdpEchoClientApplication=level_all
Simulacin de Protocolos de
Enrutamiento para MANET con Loja - 2014 6
ns-3
Mensajes de logs
Simulacin de Protocolos de
Enrutamiento para MANET con Loja - 2014 7
ns-3
Modelo de ns3
Simulacin de Protocolos de
Enrutamiento para MANET con Loja - 2014 8
ns-3
Empezamos con un enlace punto a punto (first.cc) I
Application Application
Protocol stack Protocol Stack
NetDevice Channel NetDevice
Simulator::Run ();
Finaliza de la manera usual: Simulator::Destroy ();
Return 0;
Simulacin de Protocolos de
Enrutamiento para MANET con Loja - 2014 10
ns-3
Empezamos con un enlace punto a punto (first.cc) III
Simulacin de Protocolos de
Enrutamiento para MANET con Loja - 2014 11
ns-3
Nivel de aplicacin.
o Llamada a la funcin UdpEchoServerApplication y
UdpEchoClientApplication
o Utilizacin de los Helper para configurar estas funciones.
El servidor. El servidor se encuentra en el nodo 1, estar
activo desde el primer segundo hasta el dcimo de la
simulacin y se usa el puerto nmero 9.
Simulacin de Protocolos de
Enrutamiento para MANET con Loja - 2014 12
ns-3
Empezamos con un enlace punto a punto (first.cc) VI
Simulacin de Protocolos de
Enrutamiento para MANET con Loja - 2014 14
ns-3
Ficheros de resultados I
Simulacin de Protocolos de
Enrutamiento para MANET con Loja - 2014 15
ns-3
Ficheros de resultados II
+
2
/NodeList/0/DeviceList/0/$ns3::PointToPointNetDevice/TxQueue/Enqueue
ns3::PppHeader (
Point-to-Point Protocol: IP (0x0021))
ns3::Ipv4Header (
tos 0x0 ttl 64 id 0 protocol 17 offset 0 flags [none]
length: 1052 10.1.1.1 > 10.1.1.2)
ns3::UdpHeader ( length: 1032 49153 > 9)
Payload (size=1024)
Simulacin de Protocolos de
Enrutamiento para MANET con Loja - 2014 16
ns-3
Ficheros de resultados III. Ficheros pcap
Simulacin de Protocolos de
Enrutamiento para MANET con Loja - 2014 18
ns-3
Dos nodos fijos inalmbricos ad hoc (wifi-quiet-adhoc.cc) I
Simulacin de Protocolos de
Enrutamiento para MANET con Loja - 2014 19
ns-3
YansWifiChannelHelper wifiChannel;
wifiChannel.SetPropagationDelay
("ns3::ConstantSpeedPropagationDelayModel");
wifiChannel.AddPropagationLoss
("ns3::FixedRssLossModel","Rss",DoubleValue (rss));
wifiPhy.SetChannel (wifiChannel.Create ());
NetDeviceContainer devices = wifi.Install (wifiPhy, wifiMac, nodes);
Simulacin de Protocolos de
Enrutamiento para MANET con Loja - 2014 20
ns-3
Dos nodos fijos inalmbricos ad hoc (wifi-quiet-adhoc.cc) III
MobilityHelper mobility;
//Posicin inicial
Ptr<ListPositionAllocator> positionAlloc =
CreateObject<ListPositionAllocator> ();
positionAlloc->Add (Vector (0.0, 0.0, 0.0));
positionAlloc->Add (Vector (5.0, 0.0, 0.0));
mobility.SetPositionAllocator (positionAlloc);
mobility.Install (c);
Simulacin de Protocolos de
Enrutamiento para MANET con Loja - 2014 21
ns-3
Trazas.
AsciiTraceHelper ascii;
wifiPhy.EnableAsciiAll (ascii.CreateFileStream ("wifi-quiet-adhoc.tr"));
wifiPhy.EnablePcap ("wifi-quiet-adhoc", devices);
Ejecutar
./waf --run scratch/wifi-quiet-adhoc
Simulacin de Protocolos de
Enrutamiento para MANET con Loja - 2014 22
ns-3
Ficheros de resultados I
Fichero .tr
t 2.009 /NodeList/0/DeviceList/0/$ns3::WifiNetDevice/Phy/State/Tx
ns3::WifiMacHeader (DATA ToDS=0, FromDS=0, MoreFrag=0, Retry=0,
MoreData=0 Duration/ID=0usDA=ff:ff:ff:ff:ff:ff, SA=00:00:00:00:00:01,
BSSID=00:00:00:00:00:01, FragNumber=0, SeqNumber=0) ns3::LlcSnapHeader
(type 0x806) ns3::ArpHeader (request source mac: 00-06-00:00:00:00:00:01
source ipv4: 10.1.1.1 dest ipv4: 10.1.1.2) ns3::WifiMacTrailer ()
r 2.0097 /NodeList/1/DeviceList/0/$ns3::WifiNetDevice/Phy/State/RxOk
ns3::WifiMacHeader (DATA ToDS=0, FromDS=0, MoreFrag=0, Retry=0,
MoreData=0 Duration/ID=0usDA=ff:ff:ff:ff:ff:ff, SA=00:00:00:00:00:01,
BSSID=00:00:00:00:00:01, FragNumber=0, SeqNumber=0) ns3::LlcSnapHeader
(type 0x806) ns3::ArpHeader (request source mac: 00-06-00:00:00:00:00:01
source ipv4: 10.1.1.1 dest ipv4: 10.1.1.2) ns3::WifiMacTrailer ()
Simulacin de Protocolos de
Enrutamiento para MANET con Loja - 2014 23
ns-3
Ficheros de resultados II
Simulacin de Protocolos de
Enrutamiento para MANET con Loja - 2014 24
ns-3
Ficheros de resultados III
Simulacin de Protocolos de
Enrutamiento para MANET con Loja - 2014 25
ns-3
Mensajes de log
http://www.nsnam.org/docs/release/3.19/doxygen/
Ns-3 tutorial.
http://www.nsnam.org/docs/release/3.19/tutorial/singleht
ml/index.html
Simulacin de Protocolos de
Enrutamiento para MANET con Loja - 2014 27
ns-3