Mininet [164] |
Python |
Offers a rapid prototyping workflow and virtualization functionalities to assist network developers |
The emulation tool, which merges several best features of emulators, hardware testbeds, and simulators |
Emulated topology can grow only with residing machine resources |
Distributed OF Testbed (DOT) [171] |
Java |
Supports a cluster of computers that guarantee computation and network resources to switches, hosts, and links |
Facilitates large SDN deployments by distributing the workload over a cluster of nodes |
Limited number of physical machines to emulate, lacking dynamic scalability and multi-user support |
OFNET [172] |
Python |
Provides built-in functionalities to test and debug, as well as traffic generation and monitoring tools |
Helpful in generating network traffic, monitoring of OpenFlow messages and analyzing performance of SDN controller |
Needs to be extended for large L2 network and cloud emulation platform |
ViNO [173] |
Java |
Helps to create arbitrary network topologies via Open vSwitches |
Domain-specific language for topologies and VM migration in least time |
Scalability is not specified |
EstiNet [175] |
C |
Any real application program can run on a simulated host without any modification |
Provides accuracy, quickness, repetition, and scalability and supports kernel-reentering simulation methodology |
Not scalable to a single process, and results cannot be repeated |
FS-SDN [176] |
Python |
Supports realistic test and validation of standard networks |
Scalable and accurate simulation tool |
Limited debugging and tracing capabilities |
OMNeT++ [178,179] |
C++ |
Used in network modeling, multiprocessors, and different distributed or parallel systems |
Popular extensible, modular, component-based scalable simulation tool |
Its kernel is in C++ and can only run with modern C++ compiler |
NS-3 [181] |
C++ |
Offers help for OpenFlow to program network devices |
Can add new protocols, supports the lowering of distance between real network and simulated network |
Limited visibility of visual interface for creating topology |