Using The Nctuns 2.0 Network Simulator and Emulator To Facilitate Network Researches
Using The Nctuns 2.0 Network Simulator and Emulator To Facilitate Network Researches
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
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)