Last Update:
Tue Apr 24 16:43:52 CEST 2007

Virtual Networks

One single taxonomy index for Virtual Network (still).

"Invasivity" on the Host Computer.

  • User-level. Can be implemented and used by using the standard user permissions.
  • Root access required. Installation requires root access on the host computer.
  • Kernel patch required. The kernel must be changed in some manner, either by a patch or by inserting modules.

VDE: Virtual Distributed Ethernet

License: GPL    Status: Beta/Production

It is the glue of a Virtual Square solution. Based on the idea of virtual switches and virtual crossed cables, VDE is able to create virtual Ethernet compliant distributed networks. VDE supports several kinds of Virtual square machines (User-Mode Linux, Qemu, Bochs, MPS, Ale4NET) and can be interfaced to the single virtual world through a tuntap interface (see over) or a slirp support (see over). VDE runs at User-level , (it needs root access only when a tuntap interface is required). VDE can be used as a general tunnel or VPN, a tool for mobility, a way to create a closed encrypted distributed network etc. etc. It is network protocol transparent: any protocol able to run on an ethernet is supported by VDE.

Tun-Tap kernel support

License: GPL    Status: Production

Tuntap is a general virtual interface for the linux kernel. Quoting the linux kernel documentation file: TUN/TAP provides packet reception and transmission for user space programs. It can be viewed as a simple Point-to-Point or Ethernet device, which instead of receiving packets from a physical media, receives them from user space program and instead of sending packets via physical media writes them to the user space program. With tuntap it is possible to create interfaces that are seen by the kernel like real network interfaces but all the data sent or received through tuntap is processed by applications at user level (out of the kernel). A tun interface has the behavior of a point-to-point network device while tap is a virtual ethernet device. It is part of the kernel. Port of tuntap support has been created for win32 and (partially) for MacOSX environments.


License: OSI compliant    Status: Production

Slirp is a tool by Danny Gasparovski dated back to 1995. At that time internet providers proposed two different kinds of contracts: a cheap remote terminal connection and an expensive ppp/slip service. Danny created a tool that was able to convert a terminal line into a ppp/slip access for client applications. Slirp runs completely at User-level: whenever a client application tries to open a new network connection, slirp catch the connect request. Slirp does the connect for the internal application and then forwards all the packets. From the Internet (and from the host computer operating system) point of view it is like all the connections were inited by slirp itself. It supports TCP on IPv4, currently does not work with IPv6.
VirtualSquare is a KEAP Project

© 2004 Renzo Davoli. The Virtual Square logo is © 2004 by Sandro Pifferi (Thanks).

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. This is a copy of the license