Faculty of Electrical Engineering and Computing, University of Zagreb



IMUNES - An Integrated Multiprotocol Network Emulator / Simulator  


Project overview

As invaluable tools in networked and distributed systems research, network emulators offer a viable alternative to live experimental / testbed networks. We are developing a realistic network topology emulation / simulation framework based on the FreeBSD operating system kernel partitioned into multiple lightweight virtual nodes, which can be interconnected via kernel-level links to form arbitrarily complex network topologies. The concept of using virtual nodes inside a kernel for fast network emulation is not entirely new, yet previously published work generally advocated the implementation of kernel-level virtual nodes with capabilities limited to only certain simple functions, such as passing of network frames from one queue to another based on a static precomputed path. We are basing our work on a thesis that virtual nodes, which could offer the identical rich set of capabilities as the standard kernel does, can be implemented very efficiently by reusing the existing OS kernel code. Our model therefore not only provides each node with an independent replica of the entire standard network stack, thus enabling highly realistic and detailed emulation of network routers; it also enables each virtual node to run a private copy of any unmodified user-level application, including routing protocol daemons, traffic generators, analyzers, or application servers. Furthermore, in later development phases we expect to enable each virtual node to support multiple network protocols concurrently, such as both IPv4 and IPv6, which would bring us a step closer to allowing for emulation of true multiprotocol networked environments.

During the initial development phase, supported by the Croatian Ministry of Science and Technology research grant IP-2003-143, we developed a network emulator prototype with basic support for virtual Ethernet and point-to-point links, dynamic RIP and OSPF routing, together with an integrated GUI environment for specification and management of simulation scenarios.


A preliminary downloads section is available here.

Mailing list

We would appreciate if you could route or CC: any technical questions regarding IMUNES to our mailing list.


Operating System Support for Integrated Network Emulation in IMUNES, M. Zec, M. Mikuc; to appear in Proceedings of the 1st Workshop on Operating System and Architectural Support for the on demand IT InfraStructure / ASPLOS-XI, Boston, October 2004.
Implementing a Clonable Network Stack in the FreeBSD Kernel, M. Zec; in Proceedings of the 2003. USENIX Annual Technical Conference, San Antonio, Texas, June 2003.


XORP - The eXtensible Open Router Platform at ICSI
Atoms - BGP extensions project at CAIDA / UCSD

Related projects

Netbed / Emulab - THE distributed network testbed (University of Utah)
EMPOWER - Another distributed network emulator (Michigan State University)
Modelnet - Source-routed static network topology emulator (Duke)
Harvard / NCTUns Network Simulator (NCTU Taiwan)
VINT - Virtual InterNetwork Testbed based on NS (USC / ISI)
Alpine - Application-Level Protocol Infrastructure for Network Experimentation (University of Washington)


Ana Kukec
Miljenko Mikuc
Marko Zec

Ivan Babic (Combis)
Nikola Djurak (Iskon Internet)
Zrinka Puljiz (University of Zagreb)


Croatian Ministry of Science and Technology - www.mzt.hr

  (C) 1994-2002, Department of Telecommunications. FER