A Comparison of Network Simulation and Emulation Virtualization Tools
A Comparison of Network Simulation and Emulation Virtualization Tools
American
c Society for Engineering Education, 2016
A Comparison of Network Simulation and Emulation Virtualization Tools
Abstract
Packet Tracer (PT) is an official Cisco software simulator for exercising Cisco network
equipment. Graphical Network Simulator (GNS3) is a free emulator software which allows
running actual networking software images on a computer. Both provide good Graphic User
Interface (GUI) design and have been intensively used for learners to build, configure, and
troubleshoot networks in a virtualized network environment. In this paper, PT and GNS3 will be
compared from the perspectives of capability and complexity. Strengths and weaknesses of each
will be discussed. In addition, networks will be built in order to illustrate the points of our
discussion.
1. Introduction
As technological advances continue to further integrate different aspects of our lives, it becomes
increasingly difficult to not depend on technology on a day to day basis. All of the smart devices,
gadgets and gizmos converge at a central point that provides connectivity between them - the
network. With the internet boom over the past two decades, network technology has become a
crucial discipline that is necessary for technology to truly be useful. Network engineers have to
consider a variety of factors, such as bandwidth, traffic type, number of concurrent users, ports
needed, cabling, and what hardware to use, when designing a network. Teachers of network
concepts need to employ a mixture of devices to create networks to help learners effectively
learn network theories and conduct experimental activities, such as setup, configurations, and
simulation.
In the past, virtualization technology has been popularly used in designing computer networks.
In general, there are two tools that can be used when creating virtualized networks, simulators
and emulators. Simulators mimic the basic functions of network devices but do not provide all
the properties of the devices, whereas emulators behave exactly like a realistic network.
Moreover, in an emulated network, virtual computer system with various operation systems,
such as Windows and Linux, could be connected to network devices, routers and switches, in the
created virtual network.
There are two well-known network simulation and emulation tools that are widely used in
teaching network computer courses. They are PT (Packet Tracer) and GNS3 (Graphical Network
Simulator). Each has different features and are Windows and Linux supported. PT is a
proprietary network simulator designed by Cisco Networking Academy [1]. It implements only
limited Cisco proprietary network devices. The latest version, PT 6.2 is available as a free
download to Networking Academy members. GNS3 is an open source network emulator that can
be downloaded free [2]. Based on Dynamips, Dynagen, and Qemu, GNS3 is capable of building
realistic virtualized networks. Although two tools are similar in design, both programs target
different aspects of network design and offer varying levels of functionality. The main goal of
this paper is to compare the capabilities of these two popular simulation tools.
This paper is organized as follows. Section 2 discusses the differences between PT and GNS3.
Section 3 presents the conclusions.
2. Comparison
In this section, PT will be compared with GNS3 in terms of their functionalities, capabilities, and
design.
Both PT and GNS3 are interactive tools that provide an intuitive GUI for learners to design and
configure virtual network devices. GNS3 has one workplace for placing virtual network devices.
PT’s interfaces offer two types of Workspace: logical workspace and physical workspace [3].
The logical view allows users to interconnect and interact with network devices, such as routers,
switches, and hosts, in order to build a network. The latter provides users the capability to
incorporate a design methodology across buildings or geographical boundaries. In addition PT
offers two modes of operation, real-time and simulation. In real-time mode, the user experience
is close to working with actual equipment in both operation and configuration. Simulation mode
enables users to view network traffic in a stepped fashion with control over playback. This mode
also provides for inspection of the types of data that would be included within packets and
frames traversing the network.
One of the major benefits of PT is that it’s a relatively small program that uses a low amount of
resources. For running PT 6.2, the minimum Random-access memory (RAM) requirement is
only 512 MB, and it is 1 GB for optimal performance [4]. On the contrary, GNS3 requires a
larger memory usage since all network components are being emulated and there must be enough
resources to run the program. At least 1 GB RAM will be required to operate the base program
[5]. However, this will vary depending on the amount of virtual machines, routers, switches, etc.
are added to a particular emulation scenario. The host machine should have enough storage space
and a faster processor to support a medium to large network. For example, running two machines
with Windows operation system would require the host machine to have at least 2 GB RAM.
Both PT and GNS3 are used to help train learners in both fundamental networking principles and
complex routing protocols. In design PT and GNS3 are extremely beneficial for network
simulation, which enables an engineer to simulate a network environment that closely mimics a
production network. Since GNS3 is an emulation software that uses real Cisco IOS Images and
can connect the simulated devices to virtual computer systems, depending on the IOS image
deployed most protocols in different network layers could be supported. On the other hand, PT
only supports a subset of protocols that is shown in Table 1 [9].
Since GNS3 is an emulation software that uses real Cisco IOS Images, it has all the commands
available to the specific installed IOS, and behaves as a real router would. On the contrary, PT is
a software based simulator that only supports limited routing commands. More advanced
optional parameters with commands may not be available. For example, PT has limitation in
supporting the full suite of IPv6 commands. In addition, there are limited debugging capabilities,
and often the output of extant debugging tools is limited and generic in nature. The environment
is often limited to basic implementation of networking features and limited internal dynamic
routing protocols, offering little to no support for external protocols such as BGP. Additionally
commands that need access to external services may be limited to local testing only, such as the
inability to implement AAA security to an external RADIUS or TACACS server.
2.6.Supported computer systems
As a network simulator, PT is very easy to use and does everything it needs to correctly.
However, it focuses only on the networking portion of a network, where there still exists a
variety of other components, such as PCs, servers, IP phones and smart devices. PT simulates
these hardware components but functionality is limited to basic features. It does not include the
real software that might be needed in a real-time production environment. Whereas PT
emphasizes routing and switching connectivity, GNS3 has the added benefit of testing actual
services and applications. With the help of Oracle VirtualBox [10], virtual machines running real
OS could be connected to routers and switches created inside of GNS3. In an example
highlighting many of its features, a network administrator could have a Redhat Linux Virtual
Machine (VM) running an Apache webserver. The administrator could then attach this VM to a
Cisco Adaptive Security Appliance’s (ASA) Demilitarized Zone (DMZ) and configure it to
allow external HTTP connections, then test for this connectivity from a machine outside the
network. This particular scenario could be carried out without ever having to actually touch the
production network, and allows for testing and troubleshooting before actual implementation.
PT is a closed simulation environment used to model and visualize the behavior of a network. In
simulation mode, it can capture and display the contents of packets as they travel through the
network. This helps learners understand the fundamental concepts of data transfer and
propagation across a network. GNS3 itself does not have the facility to analyze data traffic or
network behavior in real time, however it can work with network analyzers, such as Wireshark
[11], to collect traffic between emulated devices. By using Wireshark on a VM, GNS3 can
capture packets on virtual Ethernet or serial interfaces. Then the traffic could be recorded for
future analysis.
Currently it is not possible to import a PT topology to GNS3 (or vice versa). This is due to the
fact that both applications are created by different software vendors and they are not meant to
integrate with one another. Another factor is that the devices that are supported differ between
both applications. In GNS3 you must specifically add all the IOS images for the devices you plan
to use however they are automatically included with the PT base install.
The connection of PT includes crossover cable, straight through cable, fiber cable, phone cable,
coaxial cable, serial DTE, serial DCE and console cable [12]. GNS3 also supports numerous
connectivity options, such as serial DCE/DTE, however it is not as obvious how to implement
such technologies. As well, implementing the physical components in GNS3 requires more effort
and is not as intuitive. PT on the other hand provides a click and point environment and provides
a more realistic looking Layer 1 experience. The graphical representation of devices is more life-
like, and the user is provided a better experience of working with actual equipment. Devices that
are supported are depicted as they would appear in actual hardware. Additionally the method of
installing module cards to provide enhanced functionality provides the user a much more life-
like experience. GNS3 puts more focus on network components aside from physical
representation of actual equipment. GNS3 also offers various Layer 1 connectivity options, but
it is not as interactive as the environment provided within PT, nor is it as representative of real
equipment.
2.10. Certification
Both of the environments are helpful for practicing for industry recognized certifications. PT is
more aligned with Cisco certifications, but could be used for other general networking concepts
that apply to certs such as CompTia Network+. The simulation mode of operation is a valuable
tool to help the learners understand the path of a frame and/or packet. For example, in simulation
mode we can inspect the headers of frames, and see how the source and destination MAC
addresses are changed, but the IP addresses remain unchanged, as a packet is forwarded across
routing domains. We can also see how a PC may formulate a broadcast frame and forward that
throughout a broadcast domain when a destination hosts IP address needs to be resolved to a
MAC address. These are foundational concepts that are applicable across networking in general,
and thus they will assist the learner to understand these concepts. This knowledge can then be
transferred to numerous certification paths, aside from Cisco.
GNS3 can also be used to enable aspiring network engineers to practice for certification exams,
and do so in a more advanced and feature rich environment. Although it does not offer a
simulated packet inspection environment, it does support much more advanced commands and
environments. Therefore it is applicable to many other networking certifications beyond Cisco.
As well, GNS3 supports virtual machines and connections to the host system’s network stack.
With these advanced features, numerous other certification tracks could be explored. For
example, a user might set up an AAA Radius server on one virtual VM, and a client on another.
Being able to network those through a GNS3 simulated network environment offers the learner a
more realistic environment. With access to a more feature rich environment, a learner could
study for a more advanced certifications, such as the CompTia Advanced Security Practitioner.
Another example might include studying for the Redhat RHCSA. With the VM support, a learner
could easily set-up multiple Linux VMs and network them through GNS3. This would provide
an advanced topology design, and enable a learner to practice networking commands between
pairs of the virtual Linux machines. Though GNS3 set-up may be a bit daunting at first, once the
topology is in place it does open up a whole new world of possibilities and an endless number of
opportunities for advanced study.
PT is an excellent resource for teaching foundational networking topics, and directly supports the
necessary commands for preparation in numerous Cisco certification tracks, including CCENT,
CCNA, partial CCNP and CCNA Security. GNS3 on the other hand offers additional support for
connectivity to other vendors’ networking equipment, as well as virtualized hosts and servers of
various flavors. GNS3 is a bit more difficult to set up at first, but once this is mastered it opens
up opportunities to study for a wealth of certifications.
2.11. License
PT is a stand-alone product, and therefore the only licensing concern is membership in (or
alumnus) the Cisco Networking Academy. GNS3 requires access to actual IoS files for the
device desired for implementation. This could pose issues with Right to Use, as well as
availability and access to the same.
3. Conclusions
Instead of having to choose using either PT or GNS3 for network development, it might be an
even better idea to use them both together. As previously discussed, both programs target distinct
aspects of an overall project, and can be used to complement each other. PT can be used to create
a networking plan that incorporates the internal and external functions of a network. PT could
further facilitate ease of assessment and automated grading. GNS3, on the other hand, can focus
on the specific hosts that will be running and testing to see if the network logic will suit the
intended purpose. PT offers a much faster and easier experience for beginning network
technicians. PT offers a much cleaner out-of-the box experience, and could limit the frustration
factor for beginning learners. Once learners have mastered the basics, they would be better
prepared and more experienced to move into the more complex GNS3 environment. In
conclusion, PT and GNS3 should be seen as collaborative tools that can integrate with one
another towards a common goal, instead of competing applications. They are both invaluable
programs for learners who want to build their computer networking knowledge.
References