Friday, September 2, 2011

NS MODELS


NS MODELS
Traffic models and applications:
Web, FTP, telnet, constant-bit rate, real audio
Transport protocols:
unicast: TCP (Reno, Vegas, etc.), UDP
Multicast: SRM
Routing and queueing:
Wired routing, ad hoc rtg and directed diffusion
queueing protocols: RED, drop-tail, etc
Physical media:
Wired (point-to-point, LANs), wireless (multiple propagation models), satellite

NS FUNCTIONALITIES


NS FUNCTIONALITIES
Wired world
Routing DV, LS, PIM-SM
Transportation: TCP and UDP
Traffic sources:web, ftp, telnet, cbr, stochastic
Queuing disciplines:drop-tail, RED, FQ, SFQ, DRR
QoS: IntServ and Diffserv
Emulation


Wireless
Ad hoc routing and mobile IP
Directed diffusion, sensor-MAC


Tracing, visualization, various utilities

PLATFORMS SUPPORTED


PLATFORMS SUPPORTED
Most UNIX and UNIX-like systems
FreeBSD 
Linux
Solaris


Windows 98/2000/2003/XP
Cygwin required 

NS PROGRAMMING STRUCTURE


NS PROGRAMMING STRUCTURE
● Create the event scheduler
● Turn on tracing
● Create network topology
● Create transport connections
● Generate traffic
● Insert errors

NS2 SIMULATION FLOWCHART


NS STRUCTURE


NS STRUCTURE
● NS is an object oriented discrete­event simulator
* Simulator maintains list of events and executes one event after another
* Single thread of control: no locking or race conditions


● Back end is C++ event scheduler
* Protocols mostly
* Fast to run, more control


● Front end is oTCL
* Creating scenarios, extensions to C++ protocols
* fast to write and change






WHY TWO LANGUAGE? (TCL & C++)
• C++: Detailed protocol simulations require systems programming language  
* byte manipulation, packet processing, algorithm implementation
* Run time speed is important
* Turn around time (run simulation, find bug, fix bug, recompile, re-run) is slower


• Tcl: Simulation of slightly varying parameters or configurations
* quickly exploring a number of scenarios
* iteration time (change the model and re -run) is more important

FEATURES OF NS­2


FEATURES OF NS­2
● Protocols: TCP, UDP, HTTP, Routing algorithms, MAC etc
● Traffic Models: CBR, VBR, Web etc
● Error Models: Uniform, bursty etc
● Misc: Radio propagation, Mobility models , Energy Models
● Topology Generation tools
● Visualization tools (NAM), Tracing