⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 overview.html

📁 相关搜索: ns2仿真结果分析 all-awk ns2 ns2 无限网络中awk文件 ... [2.tcl.rar] - 在ns2平台上实现对AODV协议的模拟
💻 HTML
字号:
<html><head><title>Overview</title></head><body background="parchment.gif" tppabs="http://nile.wpi.edu/NS/Icons/parchment.gif" text="#000000" link="#0000FF"vlink="#000080" alink="#FF0000"><br><center><h2>Overview</h2></center><br><br><dl><p><a href="javascript:if(confirm('http://www.isi.edu/nsnam/ns/  \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address.  \n\nDo you want to open it from the server?'))window.location='http://www.isi.edu/nsnam/ns/'" tppabs="http://www.isi.edu/nsnam/ns/" target=_top>NS</a> isan event driven network simulator developed at UC Berkeley thatsimulates variety of IP networks.  It implements network protocolssuch as TCP and UPD, traffic source behavior such as FTP, Telnet, Web,CBR and VBR, router queue management mechanism such as Drop Tail, REDand CBQ, routing algorithms such as Dijkstra, and more.  NS alsoimplements multicasting and some of the MAC layer protocols for LANsimulations.  The NS project is now a part of the <ahref="javascript:if(confirm('http://www.isi.edu/nsnam/vint  \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address.  \n\nDo you want to open it from the server?'))window.location='http://www.isi.edu/nsnam/vint'" tppabs="http://www.isi.edu/nsnam/vint" target=_top>VINT project</a> thatdevelops tools for simulation results display, analysis and convertersthat convert network topologies generated by well-known generators toNS formats.  Currently, NS (version 2) written in C++ and <ahref="javascript:if(confirm('http://bmrc.berkeley.edu/research/cmt/cmtdoc/otcl/index.html  \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address.  \n\nDo you want to open it from the server?'))window.location='http://bmrc.berkeley.edu/research/cmt/cmtdoc/otcl/index.html'" tppabs="http://bmrc.berkeley.edu/research/cmt/cmtdoc/otcl/index.html"target=_top>OTcl</a> (Tcl script language with Object-orientedextensions developed at MIT) is available.  This document talksbriefly about the basic structure of NS, and explains in detail how touse NS mostly by giving examples.  Most of the figures that are usedin describing the NS basic structure and network components are fromthe <a href="javascript:if(confirm('http://www.isi.edu/nsnam/ns/ns-tutorial/ucb-tutorial.html  \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address.  \n\nDo you want to open it from the server?'))window.location='http://www.isi.edu/nsnam/ns/ns-tutorial/ucb-tutorial.html'" tppabs="http://www.isi.edu/nsnam/ns/ns-tutorial/ucb-tutorial.html"target=_top>5th VINT/NS Simulator Tutorial/Workshop</a> slides and the<a href="javascript:if(confirm('http://www.isi.edu/nsnam/ns/ns-documentation.html  \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address.  \n\nDo you want to open it from the server?'))window.location='http://www.isi.edu/nsnam/ns/ns-documentation.html'" tppabs="http://www.isi.edu/nsnam/ns/ns-documentation.html"target=_top>NS  Manual</a> (formerly called "NS Notes andDocumentation"), modified little bit asneeded. For more information about NS and the related tools, visit the<a href="javascript:if(confirm('http://www.isi.edu/nsnam/vint  \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address.  \n\nDo you want to open it from the server?'))window.location='http://www.isi.edu/nsnam/vint'" tppabs="http://www.isi.edu/nsnam/vint" target=_top>VINT project homepage</a>.</p><p align="center"><img src="fig1.gif" tppabs="http://nile.wpi.edu/NS/Figure/fig1.gif"><br><b>Figure 1.</b> Simplified User's View of NS</p><p>As shown in Figure 1, in a simplified user's view, NS isObject-oriented Tcl (OTcl) script interpreter that has a simulationevent scheduler and network component object libraries, and networksetup (plumbing) module libraries (actually, plumbing modules areimplemented as member functions of the base simulator object). Inother words, to use NS, you program in OTcl script language.  To setupand run a simulation network, a user should write an OTcl script thatinitiates an event scheduler, sets up the network topology using thenetwork objects and the plumbing functions in the library, and tellstraffic sources when to start and stop transmitting packets throughthe event scheduler.  The term "plumbing" is used for a network setup,because setting up a network is plumbing possible data paths amongnetwork objects by setting the "neighbor" pointer of an object to theaddress of an appropriate object. When a user wants to make a newnetwork object, he or she can easily make an object either by writinga new object or by making a compound object from the object library,and plumb the data path through the object. This may sound likecomplicated job, but the plumbing OTcl modules actually make the jobvery easy. The power of NS comes from this plumbing.</p><p>Another major component of NS beside network objects is the eventscheduler.  An event in NS is a packet ID that is unique for a packetwith scheduled time and the pointer to an object that handles theevent. In NS, an event scheduler keeps track of simulation time andfires all the events in the event queue scheduled for the current timeby invoking appropriate network components, which usually are the oneswho issued the events, and let them do the appropriate actionassociated with packet pointed by the event.  Network componentscommunicate with one another passing packets, however this does notconsume actual simulation time.  All the network components that needto spend some simulation time handling a packet (i.e. need a delay)use the event scheduler by issuing an event for the packet and waitingfor the event to be fired to itself before doing further actionhandling the packet.  For example, a network switch component thatsimulates a switch with 20 microseconds of switching delay issues anevent for a packet to be switched to the scheduler as an event 20microsecond later.  The scheduler after 20 microsecond dequeues theevent and fires it to the switch component, which then passes thepacket to an appropriate output link component.  Another use of anevent scheduler is timer.  For example, TCP needs a timer to keeptrack of a packet transmission time out for retransmission(transmission of a packet with the same TCP packet number butdifferent NS packet ID).  Timers use event schedulers in a similarmanner that delay does.  The only difference is that timer measures atime value associated with a packet and does an appropriate actionrelated to that packet after a certain time goes by, and does notsimulate a delay.</p><p>NS is written not only in OTcl but in C++ also.  For efficiencyreason, NS separates the data path implementation from control pathimplementations. In order to reduce packet and event processing time(not simulation time), the event scheduler and the basic networkcomponent objects in the data path are written and compiled usingC++. These compiled objects are made available to the OTcl interpreterthrough an OTcl linkage that creates a matching OTcl object for eachof the C++ objects and makes the control functions and theconfigurable variables specified by the C++ object act as memberfunctions and member variables of the corresponding OTcl object. Inthis way, the controls of the C++ objects are given to OTcl. It isalso possible to add member functions and variables to a C++ linkedOTcl object. The objects in C++ that do not need to be controlled in asimulation or internally used by another object do not need to belinked to OTcl. Likewise, an object (not in the data path) can beentirely implemented in OTcl. Figure 2 shows an object hierarchyexample in C++ and OTcl.  One thing to note in the figure is that forC++ objects that have an OTcl linkage forming a hierarchy, there is amatching OTcl object hierarchy very similar to that of C++.</p><p align="center"><img src="fig2.gif" tppabs="http://nile.wpi.edu/NS/Figure/fig2.gif"><br><b>Figure 2.</b> C++ and OTcl: The Duality</p><p align="center"><img src="fig3.gif" tppabs="http://nile.wpi.edu/NS/Figure/fig3.gif"><br><b>Figure 3.</b> Architectural View of NS</p><p>Figure 3 shows the general architecture of NS. In this figure ageneral user (not an NS developer) can be thought of standing at theleft bottom corner, designing and running simulations in Tcl using thesimulator objects in the OTcl library.  The event schedulers and mostof the network components are implemented in C++ and available to OTclthrough an OTcl linkage that is implemented using tclcl.  The wholething together makes NS, which is a OO extended Tcl interpreter withnetwork simulator libraries.</p> <p>This section briefly examined the general structure andarchitecture of NS.  At this point, one might be wondering about howto obtain NS simulation results. As shown in Figure 1, when asimulation is finished, NS produces one or more text-based outputfiles that contain detailed simulation data, if specified to do so inthe input Tcl (or more specifically, OTcl) script.  The data can beused for simulation analysis (two simulation result analysis examplesare presented in later sections) or as an input to a graphicalsimulation display tool called <ahref="javascript:if(confirm('http://www.isi.edu/nsnam/nam/  \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address.  \n\nDo you want to open it from the server?'))window.location='http://www.isi.edu/nsnam/nam/'" tppabs="http://www.isi.edu/nsnam/nam/"target=_top>Network Animator (NAM)</a> that is developed as a part ofVINT project. NAM has a nice graphical user interface similar to thatof a CD player (play, fast forward, rewind, pause and so on), and alsohas a display speed controller. Furthermore, it can graphicallypresent information such as throughput and number of packet drops ateach link, although the graphical information cannot be used foraccurate simulation analysis.</p></dl></body></html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -