Using The Nctuns 2.0 Network Simulator and Emulator To Facilitate Network Researches

Download as pdf or txt
Download as pdf or txt
You are on page 1of 4

Using the NCTUns 2.

0 Network Simulator and Emulator to


Facilitate Network Researches

S.Y. Wang
[email protected]
Department of Computer Science and Information Engineering
National Chiao Tung University, Hsinchu, Taiwan

Abstract limited development resources, traditional network simula-


tors usually have the following drawbacks:
NCTUns is a network simulator and emulator. By using • Simulation results are not as convincing as those pro-
a novel kernel re-entering simulation methodology, it duced by real hardware and software equipment. In
provides many unique advantages over traditional network order to constrain their complexity and development
simulators and emulators. For this reason, since its public cost, most network simulators usually can only simulate
release on November 1, 2002, as of February 16, 2005, real-life network protocol implementations with limited
more than 2,745 people from 80 countries in the world have details, and this may lead to incorrect results.
registered at its web site (http://NSL.csie.nctu.edu.tw/
nctuns.html) and downloaded it. • These simulators are not extensible in the sense that
they lack the standard UNIX POSIX application pro-
NCTUns is open-source and runs on Linux. It can gramming interface (API). As such, existing or to-be-
simulate many different types of networks. It has many high- developed real-life application programs cannot run
quality journal and conference papers supporting its simu- normally to generate traffic for a simulated network.
lation methodology, design, and implementation. After five Instead, they must be rewritten to use the internal API
years of development, it has become a high-quality and provided by the simulator (if there is any) and be com-
useful product and has received many academic honors. In piled with the simulator to form a single, big, and com-
this paper, we give a brief introduction to NCTUns. More plex program.
information is available at its web site.
To overcome these problems, Wang invented a kernel
Keyword: network simulation, network emulation re-entering simulation methodology [1, 2] and used it to
implement the Harvard network simulator [3]. Later on,
Wang further improved the methodology and used it to
1. Introduction design and implement the NCTUns network simulator and
Network simulators implemented in software are valu- emulator [4].
able tools for researchers to develop, test, and diagnose
network protocols. Simulation is economical because it can
carry out experiments without the actual hardware. It is
flexible because it can, for example, simulate a link with
any bandwidth and propagation delay. Simulation results
are easier to analyze than experimental results because
important information at critical points can be easily logged
to help researchers diagnose network protocols.

Network simulators, however, have their limitations. A


complete network simulator needs to simulate networking
devices (e.g., hosts and routers) and application programs
that generate network traffic. It also needs to provide
network utility programs to configure, monitor, and gather
statistics about a simulated network. Therefore, developing
a complete network simulator is a large effort. Due to

1
Due to its unique features, NCTUns has received many In NCTUns, the setup and usage of a simulated
academic honors. For example, it is selected by both ACM network and application programs are exactly the same
MobiCom 2002 [5] and MobiCom 2003 [6] international as those used in real-world IP networks. For example,
conferences as a research demonstration. The IEEE each layer-3 interface has an IP address assigned to it and
Network Magazine reports this tool in its July 2003 issue application programs directly use these IP addresses to
[7]. The IEEE MASCOTS 2004 international conference communicate with each other. For this reason, any person
selects it as a tutorial [8]. The IEEE vehicular technology who is familiar with real-world IP networks can easily learn
society selects it as a full-day tutorial at its workshop [9]. and operate NCTUns in a few minutes. For the same reason,
The IEEE INFOCOM 2005 international conference selects NCTUns can be used as an educational tool to teach
it as a demonstration [10]. An invited paper will be students how to configure and operate a real-world network.
published by Wiley to illustrate the unique capabilities of
NCTUns [11]. In addition, an invited book chapter will be It can simulate fixed Internet, Wireless LANs,
published by Nova Science Publishers, Inc. in one of its mobile ad hoc (sensor) networks, GPRS networks, and
new book to introduce the unique emulation capability of optical networks. A wired network is composed of fixed
NCTUns [12]. nodes and point-to-point links. Traditional circuit-switching
optical networks and more advanced Optical Burst
In the rest of the paper, we will briefly present the Switching (OBS) networks are also supported. A wireless
unique features of NCTUns. networks is composed of IEEE 802.11 (b) mobile nodes and
access points (both the ad-hoc mode and infrastructure
mode are supported). GPRS cellular networks are also
2. Unique and Important Features
supported.
It can be used as an emulator. An external host in the It can simulate various networking devices. For
real world can exchange packets (e.g., set up a TCP connec- example, Ethernet hubs, switches, routers, hosts, IEEE
tion) with nodes (e.g., host, router, or mobile station) in a 802.11 (b) wireless stations and access points, WAN (for
network simulated by NCTUns. Two external hosts in the purposely delaying/dropping/reordering packets), Wall
real world can also exchange their packets via a network (wireless signal obstacle), GPRS base station, GPRS phone,
simulated by NCTUns. This feature is very useful as the GPRS GGSN, GPRS SGSN, optical circuit switch, optical
function and performance of real-world devices can be burst switch, QoS DiffServ interior and boundary routers,
tested under various simulated network conditions. etc.
It directly uses the real-life Linux’s TCP/IP protocol It can simulate various protocols. For example, IEEE
stack to generate high-fidelity simulation results. By 802.3 CSMA/CD MAC, IEEE 802.11 (b) CSMA/CA MAC,
using a novel kernel re-entering simulation methodology, a learning bridge protocol, spanning tree protocol, IP, Mobile
real-life UNIX (e.g., Linux) kernel’s protocol stack can be IP, Diffserv (QoS), RIP, OSPF, UDP, TCP, RTP/RTCP/
directly used to generate high-fidelity simulation results. SDP, HTTP, FTP, Telnet, etc.
It can use any real-life existing or to-be-developed Its simulation speed is high. By combining the kernel
UNIX application program as a traffic generator re-entering methodology with the discrete-event simulation
program without any modification. Any real-life program methodology, a simulation job can be finished quickly.
can be run on a simulated network to generate network
traffic. This enables a researcher to test the functionality and Its simulation results are repeatable. If the chosen
performance of a distributed application or system under random number seed for a simulation case is fixed, the
various network conditions. Another important advantage simulation results of a case are the same across different
of this feature is that application programs developed during simulation runs even though there are some other activities
simulation studies can be directly used on real-world UNIX (e.g., disk I/O) occurring on the simulation machine.
machines and deployed in the real world after simulation
studies are finished. This eliminates the time and effort It provides a highly-integrated and professional
required to port a simulation prototype to a real-world GUI environment. This GUI can help a user (1) draw
implementation if traditional network simulators are used. network topologies, (2) configure the protocol modules
used inside a node, (3) specify the moving paths of mobile
It can use any real-life UNIX network configuration nodes, (4) plot network performance graphs, (5) play back
and monitoring tools. For example, the UNIX route, the animation of a logged packet transfer trace, etc. All
ifconfig, netstat, tcpdump, traceroute commands can be run these operations can be easily and intuitively done with the
on a simulated network to configure or monitor the simu- GUI.
lated network.

2
new and important application in future intelligent transpor-
tation systems.

3. Conclusions
In this paper, we briefly present the development
history and important features of the NCTUns 2.0 network
simulator and emulator. More information is available in its
web site at http://NSL.csie.nctu.edu.tw/nctuns.html.

References

[1] S.Y. Wang and H.T. Kung, "A Simple Methodology for
Constructing Extensible and High-Fidelity TCP/IP Network
Simulators," IEEE INFOCOM'99, March 21-25, 1999, New
York, USA.
Its simulation engine adopts an open-system archi- [2] S.Y. Wang and H.T. Kung, "A New Methodology for Easily
tecture and is open source. By using a set of module APIs Constructing Extensible and High-Fidelity TCP/IP Network
provided by the simulation engine, a protocol module writer Simulators," Computer Networks, Vol. 40, Issue 2, October
can easily implement his (her) protocol and integrate it into 2002, pp. 257-278.
the simulation engine. NCTUns uses a simple but effective [3] S.Y. Wang, Harvard TCP/IP network simulator 1.0, avail-
syntax to describe the settings and configurations of a simu- able at http://www.eecs.harvard.edu/networking/simu-
lation job. These descriptions are generated by the GUI and lator.html.
stored in a suite of files. Normally the GUI will automati- [4] S.Y. Wang, C.L. Chou, C.H. Huang, C.C. Hwang, Z.M.
cally transfer these files to the simulation engine for execu- Yang, C.C. Chiou, and C.C. Lin, “The Design and Imple-
tion. However, if a researcher wants to try his (her) novel mentation of the NCTUns Network Simulator,” Computer
device or network configurations that the current GUI does Networks, Vol. 42, Issue 2, June 2003, pp. 175-197.
not support, he (she) can totally bypass the GUI and [5] ACM MobiCom 2002 conference (The Eighth Annual Inter-
generate the suite of description files by himself (herself) national Conference on Mobile Computing and
using any text editor (or script program). The non-GUI- Networking), September 23 - 28, 2002, Atlanta, USA.
generated suite of files can then be manually fed to the [6] ACM MobiCom 2003 conference, (The Ninth Annual Inter-
simulation engine for execution. national Conference on Mobile Computing and
Networking), September 14- 19, 2003, San Diego, USA
It supports remote and concurrent simulations.
[7] S.Y. Wang, “NCTUns,” In the column “Software Tools for
NCTUns adopts a distributed architecture. The GUI and
Networking,” IEEE Networks, Vol. 17, No.4, July 2003.
simulation engine are separately implemented and use the
client-server model to communicate. Therefore, a remote [8] IEEE MASCOTS 2004 conference (12th Annual Meeting of
user using the GUI program can remotely submit his (her) the IEEE International Symposium on Modeling, Analysis,
and Simulation of Computer and Telecommunication
simulation job to a server running the simulation engine. Systems), Volendam, The Netherlands, October 4 - 7, 2004.
This scheme can easily support the cluster computing model (available at http://www.mascots-conf.org/)
in which multiple simulation jobs are performed concur-
[9] The workshop on “Wireless Systems and Network Topolo-
rently on different server machines. This can increase the
gies,” IEEE Vehicular Technology Society, September 1 - 3,
total simulation throughput. 2004, Taipei, Taiwan.
It supports tactics military mobile ad hoc network [10] IEEE INFOCOM 2005 conference (24th international
simulations and intelligent transportation systems simu- conference on computer communication), March 13 - 17,
lations. In addition to supporting traditional IP network 2005, Miami, USA.
simulations, NCTUns supports tactics military mobile ad [11] S.Y. Wang and Y.B. Lin, “Wireless Communication Simula-
hoc network simulations in which an mobile node (e.g., a tions Using NCTUns 2.0: An innovative Network Simulator
tank) can actively change its location, moving speed, and and Emulator,” Wiley Wireless Communications and
Mobile Computing (to appear)
moving direction based on the current environment.
NCTUns has also been used to design protocols for vehicle-
formed mobile ad hoc networks on the roads, which is a

3
[12] S.Y. Wang and K.C. Liao, “Innovative Computer Network
Emulations using the NCTUns 2.0 Tool,” as a book chapter
of the “Progress in Computer Network Research” book,
Nova Science Publisher Inc. (to appear)

You might also like