Changes

Jump to: navigation, search

Containers/Network virtualization

1,156 bytes added, 11:28, 8 November 2006
Approaches
== Approaches ==
* '''virtualization === Virtualization on the 2nd level (OpenVZ)==='''Requirements''': The main requirement is that containers should have close to standalone servers networking capabilities. In details:# containers should have own loopback;# containers should have ability to setup their own level 3 addresses;# containers should have ability to sniff their traffic;# containers should have ability to setup their own routes;# containers should have ability to receive multicast/broadcast packets;# containers should have their own netfilters;# containers should have at least one level 2 device;  '''Current implementation''':  For input packets context switching is performed in device xmit codenetif_receive_skb(), requires virtual inherited from the device for performing context. For output, context is inherited from the socket one.* '''virtualization === Virtualization on the 3d level (IBM)==='''Requirements''':# One can ran servers in several containers listening on *:port without conflict and __without__ forcing the bind to use the IP address assigned to the container;# The source address will be filled with the container IP address;# Keep sockets isolated by namespace;# have the loopback isolated;# have the performance near to native as possible;# have broadcast and multicast working. '''Current implementation''':  For input packets context switching is performed in inherited from the routing codeentry, for output - inherited from the socket one.* '''socket === Socket virtualization (Linux-VServer)==='''Requirements''.':# implementation overhead for established tcp connections should be zero;# FIXME '''Current implementation''':  There is no context switching for packets at all, checks are performed between process and socket contexts.
== Virtualization table ==

Navigation menu