Network Simulator

This project is my master thesis at Faculty of Mathematics and Physics. I had chosen the the topic in fall, 2005 (while staying at Kansas State) and stared working in February 2006. The assignment says:

The task is to simulate a network structure for use in teaching, testing applications for network monitoring, or creating "hacker-traps" (so-called honeypots). The author should become familiar with network simulation, design and implement either his own solution or use existing frameworks (e.g. open source framework Honeyd). The solution should simulate switches, routers and host computers so would behave like real and react at least to basic network protocols like ICMP and SNMP.


This is the first publicly available alpha version. Please be careful and do not install it in production environment. Bug reports are appreciated. Some HOWTO for changing the example project to work on your computer will be published shortly. (Windows Installer) (Windows package)
NetSim-1.0-alpha.tar.gz (Linux package) (Source Code - MS Visual Studio 2003 Solution) (Source Code - MS Visual Studio 2005 Solution)
Note: .NET Framework 1.1 SDK is required to build from source.

The simulator is based on .NET Framework, so you should install it first (Or Mono if using Linux).

Installation instructions


NetSim requires some components installed on your computer.

Network Simulator Installation

Two types of installation are available. One is very easy – just decompressing file into the target directory, however, remote sockets feature is not available if you use this one. Another one is regular Microsoft installation package. (Of course, available only on Windows, but remote sockets are windows-based and not available on Linux.)

Installation type 1
Decompress the file (NetSim-1.0-alpha.tar.gz for Linux) into the destination directory. On Windows, go to Tools directory and execute gacregister.bat, which will register some assemblies to the Global Assembly Cache. Such operation is not required for Linux, because no assembly in GAC is needed for command-line simulator interface.
Network simulator console is in Bin directory (netsim.exe), for launching simulator graphic interface use either NetSim.cmd in Gui directory or launch Bin/NetSimGui.exe specifying GUI main configuration file as the first parameter (Gui/GuiConfig.xml).

Installation type 2
This type of installation is available only on Windows and is required if you want to use remote sockets. Run Setup.exe from the NetSim package and follow the setup instructions.

Known Issues

Thesis text [Adobe Acrobat, 2.2MB] (August 9th, 2006)

Current features (updated on July 21st, 2006):