VDE is an ethernet compliant virtual network that can be spawned over a set of physical or virtual computers over the Internet. The most notable VDE implementation is the open source project Virtual Square.
The Virtual Square project is similar to the VMware virtual switch or vSwitch, which works much like a physical Ethernet switch. It detects which virtual machines are logically connected to each of its virtual ports and uses that information to forward traffic to the correct virtual machines. A Vmware vSwitch can be connected to physical switches using physical Ethernet adapters, also referred to as uplink adapters, to join virtual networks with physical networks. This type of connection is similar to connecting physical switches together to create a larger network. But who wants to shell out all that money for VMware licenses, Virtual Square offers the same functionality at no cost.
The Virtual Square VDE is one of several tools developed within the Virtual Square project to provide an effective communication platform for virtual machine interoperability.
The key features of VDE are:
- consistent behavior with real ethernet network.
- It enables interconnection between virtual machines, applications and virtual connectivity tools.
- Last but not least, it does not requires administrative privileges to run.
VDE main components
The VDE network consists of the same architectural tools and devices of a real modern ethernet network. Here is a brief description of VDE components:
- VDE switch
- Like a physical ethernet switch, a VDE switch has several virtual ports where virtual machines, applications, virtual interfaces, connectivity tools and - why not? - other VDE switch can be virtually plugged in.
- VDE plug
- It is the program used to plug into a VDE switch. Data streams coming from the virtual network to the plug are redirected to standard output and data streams going to the VDE plug as standard input are sent into the VDE network.
- VDE wire
- Any tool able to transfer a stream connection can become a VDE wire (e.g. cat, netcat, ssh and others).
- VDE cable
- VDE components are interconnected via VDE cables that are made of one VDE wire and two VDE plugs as happen in a physical ethernet network.
- VDE cryptcab
- Informally VDE encrypted cable. Although it is possible to use tools like ssh or cryptcat to obtain an encrypted wire to interconnect VDE plugs, these tools work with connection-oriented streams to provide encryption, resulting in nested connection-oriented streams with poor performance and unjustified overhead. The idea behind cryptcab is the adoption of connectionless protocols to provide encrypted cables facility.