This page is an archive of news articles related to network simulation and network emulation. In addition to this news page, I list all published posts on my Archive page.
March 21, 2024
Ivan Pepelnjak wrote some posts on his ipSpace blog with links to valuable resources. First, he discovered that FRR is now available on Apple Silicone so you can run netlab emulations using FRR containers on your Macbook. He also pointed to https://bgplabs.net/, which provides documented hands-on virtual labs that help you learn BGP.
February 27, 2024
I added Nix to the list of build it yourself tools. Nix is another way to build network nodes in a declarative manner, making it easy to manage changes to your simulation scenarios.
February 26, 2023
RustyBGP is a new, open-source implementation of BGP implemented using the Rust programming language. It is compatible with the Go BGP CLI Tool.
February 19, 2023
See John Howard’s GitHub repository for a set of Containerlab configurations that use FRR and SR Linux to create a network demonstrating EVPN transport of VLANs across WireGuard tunnels.
February 16, 2023
Major update to the list of network simulators and emulators.
- Updated the summaries for projects already in the list: Cloonix, Containerlab, CORE, EVE-NG, GNS-3, IMUNES, Kathara, Mininet, ns-3, Shadow, VNX, and vrnetlab.
- Added summaries for many other projects: Cloudsim, cnet, Labtainters, LNTS, NEmu, NetLab, OMnet++, and OpenConfig-KNE.
- Removed old, low-activity projects: Antidote, Wistar, YANS, LStacker, LINE, Marionnet, Psimulator2, DockEmu, NetMirage, KNet, and ESCAPE.
May 5, 2021
Mininet version 2.3.0 was released and it now supports Python3 and Ubuntu 20.04.
FRRouting recently added a set of YANG models with a GRPC support, which should enable researchers to experiment with modern network automation tools on an open-source router.
January 6, 2021
The Netkit network emulator lives again! The University of Warwick is working to update the Netkit kernel and filesystem. The project is on GitHub at https://github.com/netkit-jh/ and is supported by a documentation site at https://netkit-jh.github.io.
December 16, 2020
Ivan Pepelnjak developed a new network simulation framework called netsim-tools. Tools that work with Libvirt and Vagrant to quickly set up a simulated network of configured, ready-to-use devices. He described his netsim-tools on his IpSpace Blog.
February 12, 2020
- The Linux Network Stack Test (LNST) has been ported from Python 2 to Python 3. See the project web site at: http://lnst-project.org/.
- The research paper, *Internet of Things (IoT): Research, Simulators, and Testbeds by M. Chernyshev, Z. Baig, O. Bello, and S. Zeadally lists simulators useful for testing wireless network protocols and wireless sensor software.
November 29, 2019
- KinD, Kubernetes in Docker, is a tool for running local Kubernetes clusters using Docker container “nodes”. See an application of KinD created as an alternative architecture for the Antidote Network Emulator at Olivier Berger’s GitHub repo.
June 21, 2019
- Netsim is a network simulator framework for Rust programmers who need to test their networking code. It was developed by MaidSafe, a company building a peer-to-peer data-sharing network so Netsim is designed to fit into the CI/CD pipeline for Rust programmers and, while it is tuned to test for NAT traversal problems, it looks like it could also be used to create other general networking scenarios.
June 7, 2019
- I decided to list the OMNeT++ discrete event simulator on my blog. When I started this blog, I did not consider it to be open source. Since then, some open-source projects have, controversially, adopted licenses similar in spirit to the OMNet++ Academic Public License. The INET networking library for OMNet++ is fully open-source, and OMNET++ is free to use by individual researchers. So, I decided it is “open enough”.
May 30, 2019
- The Virtual Model for IP Network Architecture Lab, also known as VIMINAL, has been updated to Version 2.0 and now incorporates KVM and LXD to create virtual labs. It is distributed as a set of ISO files that can be downloaded from the VIMINAL project page on SourceForge. Olivier Berger recently posted a video review of VIMINAL.
May 13, 2019
- Containernet is a fork of the Mininet network emulator that allows you to use Docker containers as hosts in emulated network topologies.
May 1, 2019
- The Knet network emulator emulates switches, routers, hosts, and servers in both traditional and software-defined network scenarios. It uses Docker containers to build network nodes, and it uses openvswitch to create switches. KNet has both a CLI and a web interface.
April 25, 2019
- The OFNet SDN network emulator is now a dead project. The ownership of the OFNet project’s domain has lapsed and has been taken over by spammers. It appears there is no trace of the original project on the web. RIP, OFNet.
February 3, 2019
- The Wistar virtual topology manager is an open source (Apache 2.0 license) network emulator tuned to support commercial Juniper appliances. However, it can also be used to run Linux VMs running open source routing software. It has a GUI and a good set of documentation. You can also read Robin Gilijamse’s blog post about installing and using Wistar.
January 20, 2019
- vrnetlab is an exciting, new open-source (MIT license) network emulator that uses container orchestration tools to manage virtual networks built between KVM guests. The author describes it as “dockerized virtual routers for convenient development, lab and CI testing”. It supports many commercial network appliances and can also be used to test a virtual network composed of open-source routers.
January 10, 2019
- Antidote is an open-source network emulator that serves as the back end for the NRE Labs web site. It’s intended to run in a web browser but there is a standalone version you can install and run on your laptop computer. It incorporates a lot of interesting technologies that supports its mission as a learning tool.
December 20, 2018
- Kubevirt is an open-source project that implements Kubernetes orchestration support for “full” VMs so they can connect together to create any virtual network topology. I think that some of the newer open-source network emulators I am seeing (including Microsoft’s ONE, which is not yet released as open-source) are based on this project or on similar technology.
September 9, 2018
- Microsoft plans to release the Open Network Emulator (ONE), formerly called CrystalNet, as an open source project. It is Microsoft’s in-house network emulator designed to test cloud-scale network technologies. Based on their announcement, it seems ONE will be similar to emulators like GNS3 and EVE-NG.
June 21, 2018
- Docker-Topo creates a network emulation scenario, described in a yAML file format, based on Docker containers, Linux bridges, and virtual Ethernet devices. Also check out the author’s blog, https://networkop.co.uk/, in which he posts detailed descriptions of network emulation scenarios featuring SDN and OpenStack.
June 13, 2018
- Kathará is a new implementation of the Netkit network emulator using Python and Docker. It is faster and lighter than Netkit, and allows easy configuration and deployment of arbitrary virtual networks featuring SDN, NFV and traditional routing protocols such as BGP and OSPF. Kathará comes with P4, OpenVSwitch, Quagga, Bind, and more, but can also be extended with your own container images. All the previous laboratories and tools created for Netkit are compatible with the new framework.
June 10, 2018
- Labtainers is a network emulator based on Docker containers. It was created by the US Naval Postgraduate School Center for Cybersecurity and Cyber Operations. It comes with many prepared labs that focus on cybersecurity scenarios.
- Jorge García created the Educational Network Simulator. It is a very simple educational network simulator intended to be used with his 15-16 year old students. Jorge provides a series of YouTube videos explaining how it works and how to use it.
June 6, 2018
- The cnet network simulator created by the University of Western Australia enables development of and experimentation with a variety of networking protocols in WAN, LAN, and WLAN networks.
May 6, 2018
- BoNeSi is a DDoS Botnet Simulator designed to study the effect of DDoS attacks. BoNeSi generates ICMP, UDP and TCP (HTTP) flooding attacks from a defined botnet size (different IP addresses). Users may configure rates, data volume, source IP addresses, URLs and other parameters.
February 21, 2018
- The ONOS project created an ONOS Emulator based on a VirtualBox VM and Mininet. In addition to providing a ready-to-use ONOS SDN network emnulator, the ONOS project also created a complete a set of exercises designed to explain the main concepts of ONOS.
January 21, 2018
- BitScope created a Cluster of Raspberry Pi modules used to emulate a large-scale supercomputer so that code can be tested in a low-cost environment. I think maybe the same architecture could be used to build a hardware-based nework emulator.
December 15, 2017
- Filius is an open-source network simulator developed at the University of Siegen to teach fundamentals of traditional Internet networking to secondary school students. The Filius website is mostly in German but the Filius introduction is written in English and it provides all the information needed to install and use it, and offers a lot of exercises for students to try.
December 8, 2017
- The MaxiNet network emulator provides distributed network emulation based on the Mininet network emulator.
November 13, 2017
- Vincent Bernat’s blog describes his method for creating a network emulation scenario using QEMU/KVM, among many other interesting Linux networking topics. See Vincent’s GitHub repository for his network emulation scripts.
- Microsoft announced CrystalNet, an in-house network emulator designed to test cloud-scale network technologies. The last paragraph of their announcement suggests they may make the project available to researchers in the future.
October 13, 2017
- The Etherium Go team created a document that describes how to emulate a private Ethereum network. It looks like the procedure is applicable to any Ethereum implementation.
September 26, 2017
- Researchers, users, and developers who work with containers and container networking may use Minikube to emulate a Kubernetes cluster on a laptop computer. Kubernetes is a very popular container orchestration tool. Minikube runs a single-node Kubernetes cluster inside a virtual machine on a user’s laptop computer.
September 12, 2017
- Anderson Bassani created a document that shows how to create a virtual network of Linux containers to emulate a blockchain fabric.
August 16, 2017
- Ivan Pepelnjak’s blog wrote a post about teaching networking to students in a modern way. This is another example of how open-source network emulation and networking software is being used to teach networking in Universities. Also, it is interesting that they are teaching IPv6 first and ignoring IPv4 in the introductory networking course. See the Ivan’s blog post’s comments for a link to the course book and resources.
August 1, 2017
- The SELENA project — Scalable Emulation of LargE Network Architectures — uses XEN to emulate network nodes. It offers time dilation control to support a higer level of fidelity in network emulation. SELENA uses a Python API to define the network emulation topology and configuration. It is partially based on Mininet. See the academic paper that introduces SELENA. This project was released in 2014 and not updated since then.
July 4, 2017
- ToMaTo is a network emulation test bed created for the G-Lab project, funded by the German Ministry of Education and Research. The ToMaTo source code that runs the test bed is available under an open-source license. I reviewed the project documentation and it looks like an interesting project but it is not clear if ToMaTo can be installed and run on a single computer such as my laptop.
June 19, 2017
- NEmu (Network Emulator for Mobile Universes) is an open-source network emulator that includes a mobility function to emulate a WiFi network. It manages a virtual topology of QEMU virtual machines hosted on one or more physical hosts. NEmu is described in two academic papers: 1 and 2.
June 5, 2017
- ESCAPEv2 (Extensible Service ChAin Prototyping Environment) is a major update to ESCAPEv1. It is a framework which supports the development of several parts of the service chaining architecture including VNF implementation, traffic steering, virtual network embedding, etc.
June 4, 2017
- I am doing some spring cleaning and pruning topics from my list of open source network emulators.
- I removed references to the LINE network emulator from the front page. It has not been updated in three years and seems very complex to install. I have not tried it, yet, and I doubt I will.
- I removed OFNet from the list of network emulators. It seems development has stalled. I will add this back if the project is refreshed. I posted an overview and test run of OFNet on my blog.
- I removed Psimulator2 from the list of network emulators. It is old and has not been updated in a long time.
- I’ll consider removing other projects with low development activity from the list, or categorizing the list according to development activity. I noticed that visitors to my site want to know which are the most recently updated projects.
May 23, 2017
- The Fast Network Simulation Setup (FNSS) toolchain has similar goals to AutoNetKit in that it describes a set of tools that allow the user to define a network topology using a variety of methods and then output configuration files that may be used to emulate that network topology in a variety of network emulation tools (Mininet, NetKit, ns-2, or ns-3) or as a program in a variety of languages (Python, C++, or Java). It seems to be an active project. See the academic paper describing this toolchain for more information.
May 5, 2017
- GNS3 2.0 has been released.
- A consortium of Linux networking companies released the Free Range Routing (FRR) project, a fork of the Quagga routing protocol suite. It seems Quagga development has gone stale so even the Open Source Routing foundation has moved to support FRR, instead. Hopefully, we’ll see some advancements in Linux routing protocol support coming from this project.
April 25, 2017
- AutoNetKit is an open-source project based on Python that builds network configuration files for the NetKit network emulator. AutoNetKit is not itself a network emulator; it sits on top of Netkit. See the original presentation for AutoNetKit on YouTube and access the AutoNetKit source code on GitHub. It seems the developer has not updated the open-source version in two years, but has continued this project within a private company (Cisco VIRL).
April 11, 2017
- I presented a paper at the NetDev conference in Montreal. I’m honoured that the technical committee accepted my proposal to speak about Linux network emulation tools. You can see the slides at the NetDev web site.
- Tiny Core Linux has been updated to 8.0 and now includes the 4.8 Linux kernel. Tiny Core Linux is a lightweight memory-resident Linux distribution.
March 2, 2017
- NetKit released a beta version of its new 64-bit Netkit network emulator. It includes support for OpenFlow-related tools, including Open vSwitch and the Ryu SDN controller.
- The Marionnet network emulator web site was recently rebuilt, so all Marionnet links on my blog were broken. I updated all Marionnet posts to fix the links.
February 22, 2017
- The Cloonix network emulator added new demonstration scripts for MPLS, EAP, and Dynamic DNS.
- NetMirage is a network emulator developed at the University of Waterloo in Canada. It is currently available as an open beta. Similar to other network emulators, NetMirage allows users to run real code to test IP applications. The NetMirage developers are currently using it to construct large-scale virtual Tor networks.
January 31, 2017
- Kenneth Jiang wrote Yet Another Network Simulator, also knowns as YANS, to make it easier to simulate simple networks. Kenneth’s blog provides more details about YANS.
- Linux Journal wrote a very practical HOWTO article about emulating a network environment that provides some of the major Internet functions. It is available in three parts: The Tiny Internet Project Part I, Part II, and Part III.
- GNS3 2.0 beta 3 released
January 16, 2017
- Mininet-Wifi now emulates Vehicular Ad Hoc Networks (VANETs). Users may use the Mininet-WiFi python API to create cars that move around in virtual space in an SDN network emulation. See Chapter 5.7 of the Mininet-WiFi user manual for more information.
- GNS3 version 2.0 beta 2 released.
Jan 3, 2017
- New York University recently released an open source end-to-end network simulator for 5G mmWave cellular networks based on the NS-3 simulator. See the article on the NYU Wireless web site. Also the project is hosted on GitHub. Now it just needs a cool name!
- LENA, the LTE-EPC Network Simulator, is also based on NS-3 and allows users to design and test Self Organized Network (SON) algorithms and solutions.
December 16, 2016
- Eve-NG is the next generation of the UNetLab network emulator. It is currently raising funds on Indigogo to fund development. The Eve-NG source code is available on GitLab.
- VNX created a new VNX Openstack network emulation tutorial that allows users to experiment with OpenStack and the OpendDaylight SDN controller. This new scenario is similar to the one they created earlier this year, but it uses a newer version of OpenStack and it uses VNX commands to build the OpenStack scenario, instead of DevStack.
December 2, 2016
- GNS3 2.0 alpha 4 has been released, which includes a “save as you go” feature, smart packet capture, VPCS/clouds/switches templates, cloud node refactoring, a new NAT node and some architectural changes to GNS3 Server and GUI.
- GNS3 released GNS3 version 1.5.2 in August 2016. Notable features added since version 1.3, when I last used GNS3, are: VMWare integration, remote packet capture support, Docker containers may be used to emulate nodes in the network, and GNS3 projects may be saved in a portable file format.
November 18, 2016
- Roland Kuebert has forked the psimulator2 network simulator project from the original, seemingly discontinued source and made the new version available at https://github.com/rkuebert/psimulator.
- The HYNESIM hybrid network simulation project is a network emulation project that has an open-source core component and also offers some additional features in a commercial package. The project web site is mostly written in the French language.
November 1, 2016
- The Cloonix network emulator has been updated to version 33.
- LStacker is a new project that builds virtual networks consisting of containers and bridges. It supports both LXC and Docker containers. It relies on new LXD container management features available in the Ubuntu 16.04 and later. See the LXD 2.3 release notes for more details. LStacker might be usable as a network emulator.
October 2, 2016
- The Interplanetary File System (IPFS) is a distributed file system that uses technology similar to that used in Named Data Networking (NDN) to connect computing devices with the same system of files. You can read more about its origins in the paper IPFS – Content Addressed, Versioned, P2P File System.
September 16, 2016
- The Mini-NDN network emulator enables experimentation on the Named Data Networking (NDN) platform. It is based on Mini-CCNx (see below) and it uses the latest NDN libraries, NFD, NLSR, and tools released by the NDN project to emulate an NDN network on a single system.
- Mini-CCNx is an extension of the Mininet network emulator that enables experimenting with Information Centric Networks, also known as Named Data Networks.
August 22, 2016
- ESCAPE: Extensible Service ChAin Prototyping Environment is an SDN emulation framework based on the Mininet network emulator which supports experimentation with service chaining architecture; including VNF implementation, traffic steering, virtual network embedding, and more. The ESCAPE source code is available at github.com/nemethf/escape.
August 4, 2016
- DockEMU is a network emulator that uses Docker Containers and Linux Bridging to emulate IP network functionality and NS-3 to emulate Ethernet and physical networking functionality. It seems like an effort to create a “best of both worlds” network emulator. DockerEMU was published about two years ago but has not been updated since. The paper describing DockEMU, DOCKEMU — A Network Emulation Tool, is available on academic publishing sites.
July 4, 2016
- Amazon’s new IoT Dash Button can be programmed to interact with the Internet of Things. Very cool project for open-source enthusiasts who run code on AWS.
June 21, 2016
- The Cloonix network emulator has been updated to v30. This new release includes a new client mode — cloonix_zor — that will search for running cloonix servers. It also replaces the slirp_lan object with a NAT object, and lays the groundwork for a new A2B object, which will enable users to specificity the attributes of a link.
June 16, 2016
- Cumulus Networks’ Topology Converter may be used to create network emulation scenarios using VirtualBox VMs and Vagrant. It simplifies network emulation if you want to use tools like VirtualBox, Vagrant and/or libvirt.
May 30, 2016
- The VNX network emulator posted a new VNX scenario supporting VPLS.
- The VNX network emulator also recently added new features: VNX now supports KVM virtio drivers, which should enhance the performance of KVM guests to near bare-metal levels; VNX now supports OpenBSD virtual machines; and more.
May 16, 2016
- The Ostinato packet traffic generator and analyzer claims to be “Wireshark in reverse”. I have not used it yet, but it seems to be a full-featured traffic generator that will run well in a VM so it should be useful tool to use in network emulation scenarios.
May 2, 2016
- The LINC switch is an OpenFlow switch written in Erlang. It runs as a user process in a Linux system and supports up to OpenFlow 1.4. It is integrated into the Mininet network emulator and can be used as an alternative to Open vSwitch in SDN emulation scenarios.
- The LINC Switch for optical emulation, or LINC-OE, is an extension of the LINC switch that emulates a WDM optical multiplexer. I found an example of using LINC-OE with Mininet and the ONOS SDN controller on the ONOS project web site’s use-cases section.
April 25, 2016
- I wrote a long blog post about Mininet-WiFi. I included four tutorials that demonstrate Mininet-WiFi’s ability to emulate mobile stations in an WiFi software defined network.
April 20, 2016
- OFNet is a new project designed to emulate SDN networks. It provides visual presentations of control plane transactions. The project offers a virtual machine image you can try. OFNet is an open source project and the source code is included on the OFNet VM, in the ~/ofnet/src directory. I e-mailed the developer to understand the status of the project and he says it is an active project and updates to the project web site will be coming in the future.
- Unified Networking Lab released another update, to version 1.0.0-8, delivering many improvements. See the announcement on the UNetLab web site.
April 11, 2016
- The Wireless Mesh SDN project uses the CORE network Emulator and NS-3 to emulate an SDN-controlled wireless mesh network on a single PC. They offer source code and a virtual machine image you can download.
April 4, 2016
- Greencloud is a packet-level simulator for data centers that models energy use and efficiency. It simulates the energy consumed by virtual data center IT equipment. Greencloud may be installed by compiling the source code or by downloading a pre-configured virtual machine. It is released under the General Public License Agreement and is an extension of the NS2 network simulator.
March 28, 2016
- Netkit released a new filesystem that includes support for experimenting with OpenFlow and related tools, including Open vSwitch and the Ryu controller framework. Download it from the Experimental Version section of the NetKit Official Releases page.
- Carlos Martín-Cleto created some SDN scenarios for the VNX network emulator. He posted them on GitHub at the following URL: https://github.com/cletomcj/vnx-sdn.
March 23, 2016
- The Unified Networking Lab (UNetLab) development team released a major update to version 1.0. See the UNetLab 1.0.0-4 release notes.
- OpenNet is a simulator built on top of Mininet and ns-3 for Software-Defined Wireless Local Area Network (SDWLAN). See this presentation and this academic paper.
- I recommend an interesting academic paper that describes Using the Cloonix network emulator as a wireless network emulator.
March 15, 2016
- Mininet-WiFi is a fork of the Mininet SDN network emulator which adds WiFi Stations and Access Points but otherwise works exactly the same as Mininet. The developer described his modifications in two presentations — presentation-1, and presentation-2 — and an academic paper.
- mac80211_hwsim is a software simulator for Wi-Fi radios that can be used to create virtual wi-fi interfaces that use the mac80211 wlan driver. Using this tool, researchers may emulate a Wi-Fi link between virtual machines. Some practical examples and supporting information are at the following links: lab, thesis, hostapd, wpa-supplicant, docs-1, and docs-2.
March 9, 2016
- CloudSim and CloudSimSDN are used to simulate datacenter networks. They are designed to test software performance in a cloud environment and appear to be used mostly in academic research. The academic papers outlining each tool are found at the following links: CloudSim and CloudSimSDN.
- I added a post describing tools that support OpenStack emulation by installing OpenStack on a single machine.
March 1, 2016
- The VNX network emulator project team added new vagrant and virtualbox Ubuntu 15.10 demo virtual machines for users who do not want to experiment VNX without installing it themselves. The demo VM is suitable for testing LXC-based scenarios.
- I added a post about using the Mininet network emulator with the openDaylight SDN controller.
February 18, 2016
- UNetLab is a new open-source network emulator that supports Dynamips, IOU, and QEMU devices. I added a description in the Open Source Network Simulators page.
February 17, 2016
- The GNS3 Network Simulator version 1.4.1 is released. It offers some improvements on top of the recent major release, version 1.4.
- The Shadow Network Simulator version 1.0.1 is released. This is a major update.
- The VNX network emulator project added new KVM root filesystems based on Ubuntu 15.10.
- I added a post about saving network topologies for the Cloonix network emulator.
February 4, 2016
- LINE is a network emulator that emulates IP networks and supports detailed analysis and reporting. I added a description in the Open Source Network Simulators page.
January 26, 2016
- Shadow is an open-source network simulator/emulator hybrid that runs real applications like Tor and Bitcoin in a discreet-event network simulation. I added a description in the Open Source Network Simulators page.
January 18, 2016
- I upgraded my Linux setup by purchasing a used Lenovo Thinkpad T420. See my review of the T420 as a low-cost Linux workstation.
- The GNS3 network simulator released a new update and is now at version 1.4. GNS3 version 1.4 offers VMware integration. See the announcement on GNS3.com.
- The Cloonix network simulator released version 29, which simplifies saving lab topologies. See the Cloonix web site to get the latest version.
December 15, 2015
- The VNX network simulator added a packaged laboratory scenario designed to explore an OpenStack environment running OpenDaylight as the network management provider. See the VNX web site for more information.