we suggest the first class for an introduction to programming (Appendix A), An overview of Network Simulator 2 (NS2) is discussed in Chapter 2. Here, we. This book starts off with an introduction to network simulation in Chap We Chapter 2 provides an overview of Network Simulator 2 (NS2). Shown in this. Introduction to Network Simulator NS2 is a primer providing materials for NS2 Pages PDF · Simulation of Computer Networks. Teerawat Issariyakul.
|Language:||English, Spanish, Arabic|
|Distribution:||Free* [*Sign up for free]|
ns2- Network Simulator. ❑ One of the most popular simulator among networking researchers. ❑ Open source, free. ❑ Discrete event, Packet level simulator. Introduction to Network Simulator NS2 is a primer providing materials for NS2 beginners, whether students, professors, or researchers for understanding the. An Introduction to NS. An Introduction to NS2. Textbook: T. Issariyakul and E. Hossain, Introduction to Network Simulator NS2, Springer 1.
Finally, the TTL time to live value is calculated and updated. The delay can also be expressed in the same manner, by using m milli and u mikro as qualifiers.
There are several queue management algorithms implemented in ns2, but in this exercise only DropTail and RED will be needed. The format of the trace file is following: cbr cbr r cbr r ack tcp tcp Figure 5. Composite construction of a unidirectional link C.
Tracing and Monitoring In order to be able to calculate the results from the simulations, the data has to be collected somehow. NS2 supports two primary monitoring capabilities: traces and monitors.
The traces enable recording of packets whenever an event such as packet drop or arrival occurs in a queue or a link. The monitors provide a means for collecting quantities, such as number of packet drops or number of arrived packets in the queue. The monitor can be used to collect these quantities for all packets or just for a specified flow a flow monitor.
Then the events are recorded to the file specified by the handle. Finally, at the end of the simulation the trace buffer has to be flushed and the file has to be closed. This is usually done with a separate finish procedure. However, with complex topologies and many sources this way of collecting data can become too slow. The trace files will also consume a significant amount of disk space. Optionally the queue monitor can also keep an integral of the queue size over time.
For instance, if there is a link between nodes n0 and n1, the queue monitor can be set up as follows: Figure 6. For example here the set command is used to get the value of the variable parrivals defined in the queue monitor class.
A flow monitor is similar to the queue monitor but it keeps track of the statistics for a flow rather than for aggregated traffic. A classifier first determines which flow the packet belongs to and then passes the packet to the flow monitor. The variables and commands in the Flowmonitor class can be used after the monitor is created and attached to a link.
Controlling of Simulation After the simulation topology is created, agents are configured etc. The finish procedure has to be defined to flush the trace buffer, close the trace files and terminate the program with the exit routine. It can optionally start NAM a graphical network animator , post process information and plot this information.
One node will send n user defined number packets, one at a time at regular intervals, to another node which will return the packet immediately. For each packet the sender will then calculate the round trip time. The char ret is going to be set to '0' if the packet is on its way from the sender to the node which is being pinged, while it is going to be set to '1' on its way back.
This time is later used by the sender to calculate the round-trip-time. The rest of the part of program codes of the header are used to access the packet header from any packet reference. Necessary Changes to NS2 Next step is to modify some of the NS system files so that the newly written protocol or agent can work with the simulator. The files that are needed to be modified are shown within red bubbles in Figure.
Following code is simple tcl program that uses the MyPing agent. Directory structure 1 Edit packet. There you can find the definitions for the packet protocol IDs i.
In my edited version of packet. Within this part add an entry for MyPing. It supports tabbed editing, which allows working with multiple open files in a single window. The project's name comes from the C increment operator. Figure 8. It supports topology layout, packet level animation, and various data inspection tools. You have to add the file myping. Xgraph One part of the ns-allinone package is 'xgraph', a plotting program which can be used to create graphic representations of simulation results.
Figure NS2 graph specimen V. In conclusion, we found out that network simulator NS2 , is used as a tool to design the result of the simulation are transfer information secure between nodes.
Xgraph in NS IV. Not only these results but also we can get other results in the form of Xgraph. I am very grateful and express my heartfelt countless Namaste to most respectable and my M.
Guide and supervisor who are Dr. Ananthi madam ji,b. Without madam ji, and Sir K. Padmanabhan inspiration, definitely this paper work would not have been possible. I would like to express my heartfelt special thanks to most respectable, emeritus and senior Prof. I would like to express special thanks to Prof. Ramana Murthy M.
Shankar B. I take this opportunity to express my heartfelt thanks to Dr. Balaji M. Bidgoli H. Volume 1, . Altman, E. NS Simulator for beginners [Online]. Available: citeseer. Greis, Marc. Tutorial for the Network Simulator "ns" [Online]. Available: . Breslau et al. Advances in network simulation. McCanne and S. Issariyakul, and E. He has 7 years of teaching experience and 2 year of Research Experience.
He is supervising many Ph. He has excellent teaching track record with 25 years teaching experience. Balaji has completed M. It can save a lot of time spent in writing NS2 simulation scripts. More important, we expect that, over the time, the scenarios collectively defined by the users of this tool will converge onto a set of community-acceptable TCP performance evaluation benchmarks, which will in turn be used by each individual researcher. Automate simulation and post-processing procedures; 2.
Define a set of commonly used network topologies, traffic models and performance evaluation metrics. This simulation tool does not attempt to be final. Instead, it intends to serve as a starting point. We invite community members to contribute to the project by helping extend this tool toward a comprehensive set of NS2 TCP evaluation benchmarks. Tool Components The architecture of our tool is shown in Fig. They are single-bottleneck dumb-bell, multiple- bottleneck parking-lot, and a simple network topology.
More realistic and complex topologies can be added to the tool easily. The bandwidth between the two routers is much lower than the other links, which causes the link between the routers to be a bottleneck.
Traffic can be either uni-directional or bi-directional. In this configuration, the core routers represent the backbone of the network with the access routers responsible for sender or receiver nodes to connect to the network. Static routing is employed as the default routing protocol. All the links in the above topologies have settable parameters such as link capacity, propagation delay, queue discipline, and so on. Traffic Models The tool attempts to apply the typical traffic settings.
The applications involved include four common traffic types. Implementation details and choice of TCP variants are decided by users, which is not in the scope of this tool.
Both sending rate and packet size are settable. Interactive Voice Traffic There are currently two synthetic voice traffic generation methods available in this tool.
One is based on CBR-like streaming traffic. The mean ON period is 1. These values are set in accordance with ITU-T recommendations [ 18 ], but are changeable if needed. The voice packet size is bytes, including the bytes data packet codec G, 64 kbps rate and 20 ms duration , 20 byte IP header, 8 byte UDP header, and 12 byte RTP header. Performance Metrics A comprehensive list of the metrics for TCP performance evaluation is described in [ 19 ].
In the first step, this tool tries to implement some commonly used metrics described in [ 19 ]. Here we follow [ 19 ] and classify the metrics into network metrics and application metrics.
They are listed as follows. Throughput, Delay, Jitter and Loss Rate 2. Throughput For network metrics, we collect bottleneck link utilization as the aggregate link throughput. Throughput is sometimes different from goodput, because goodput consists solely of useful transmitted traffic, where throughput may also include retransmitted traffic [ 19 ].
But users care more about the useful bits the network can provide. So the tool collects application level end-to-end goodput no matter what the transport protocol is employed. For long-lived FTP traffic, it measures the transmitted traffic during some intervals in bits per second.
Voice and video traffic are different from above. Their performance is affected by packet delay, delay jitter and packet loss rate as well as goodput. So their goodput is measured in transmitted packet rate excluding lost packets and delayed packets in excess of a predefined delay threshold.
Delay We use bottleneck queue size as an indication of queuing delay in bottlenecks. For web traffic, we report on the response time, defined as the duration between the client's sending out requests and receiving the response from the server.
For streaming and interactive traffic, packet delay is a one-way measurement, as defined by the duration between sending and receiving at the end nodes. Jitter Delay jitter is quite important for delay sensitive traffic, such as voice and video. Large jitter requires much more buffer size at the receiver side and may cause high loss rates in strict delay requirements.
We employ standard packet delay deviation to show jitter for interactive and streaming traffic. Loss Rate To obtain network statistics, we measure the bottleneck queue loss rate. We do not collect loss rates for FTP and web traffic because they are less affected by this metric. For interactive and streaming traffic, high packet loss rates result in the failure of the receiver to decode the packet. In this tool, they are measured during specified intervals. The received packet is considered lost if its delay is beyond a predefined threshold.
Response Times and Oscillations One of the key concerns in the design of congestion control mechanisms has been the response time to sudden network changes. On the one hand, the mechanism should respond rapidly to changes in the network environment. On the other hand, it has to make sure changes are not too severe to ensure the stability of the network [ 19 ].
This tool is designed so the response time and fluctuations can be easily observed using a series of figures it generates, if the simulation Wang, Xia and Harrison [Page 9] Internet-Draft TMRG, Evaluation, Tool April scenarios we use include variable bandwidth, round trip delay, various traffic start times and other parameters.
Fairness and Convergence In this tool, the fairness measurement uses Jain's fairness index [ 20 ] to measure the fair bandwidth share of end-to-end FTP flows that traverse the same route. Convergence times are the time elapsed between multiple flows from an unfair share of link bandwidth to a fair state. They are quite important for environments with high-bandwidth, long-delay flows.
This tool includes scenarios to test the convergence performance.
Robustness in Challenging Environments A static link packet error model has been introduced in the tool to investigate TCP performance in challenging environments. Link failure, routing changes and other diagnostic markers can easily be tested by changing the tool's parameters.
Simulation Results The tool includes a package [ 21 ] to automatically generate the above- discussed performance metrics. At the end of a simulation, it also automatically generates a series of user-defined statistics e. It can create latex and html files in order to present the simulation results in a paper or webpage form.
All the simulation-generated data is stored in a temporary directory for later use. Usage Description Here we present a brief description on how to use this software.
For the details on the graphs that can be generated, please refer to the manual available at [ 21 ]. Three example scripts are given in the package. Let's take the dumb- bell topology as an example. Those parameters can be changed as needed. Totally, the parameter setting includes three parts: topology setting traffic setting, and simulation statistics and graph setting.
The topology setting defines the specific topology parameters. For dumb- bell, it sets the bottleneck bandwidth, round trip time, propagation delay, and packet error rate in the bottleneck link.
Finally, you choose the performance statistics to be generated like bottleneck utilization, packet loss rate, etc. The parking-lot and network simulations are similar to the dumb-bell topology. Security Considerations There are no security considerations in this document.