Subject: Virtualization And IPv6 : Part Of IPv6 Address For Virtual Hosts

From: "Arul Kumar Chellappan" <[email-masked]>
Date: Wed, 26 Sep 2007 02:06:52 +0530

Dear All,

With virtualization gaining momentum, would there be an option in IPv6 where
it has a mechanism to address a virtual host from the real world.  Like the
128bit IPv6 address having [Network Prefix][Host ID][Virtual host ID].  For
the backward compatibility, the host part could be subdivided into real host
ID and the virtual host ID and range of virtual host IDs could represent a
single real node.

Yes, I understand about the major implementations now have no provitions for
that but multicast addressed like ALL_VIRTUAL_NODE_ON_THIS_REAL_NODE that
would help in easy management of that device.

This is just my initial thought, with limited understanding on
virtualization and IPv6.  Could you please let me know your thoughts on
this.

Regards,
Arul Kumar C
-~-
--------------------------------------------------------------------
IETF IPv6 working group mailing list
[email-masked]
Administrative Requests: https://www1.ietf.org/mailman/listinfo/ipv6
--------------------------------------------------------------------

---

From: Brian E Carpenter <[email-masked]>
Date: Wed, 26 Sep 2007 10:46:55 +1200

I don't see why you would need to do that. If a subnet prefix
is a /64, that leaves 64 bits for virtual hosts on that subnet,
each of which could participate in neighbour discovery. Why do
you need structure in the interface ID? (Of course, you could
certainly choose to number the virtual hosts consecutively
within the IID space, but that's an implementation detail,
and might be undesirable for security reasons.)

However - it is clear that massive server virtualisation
using global addresses is possible with IPv6.

Regards
    Brian Carpenter
    University of Auckland

On 2007-09-26 08:36, Arul Kumar Chellappan wrote:
> ------------------------------------------------------------------------
>

---

From: Mark Smith <[email-masked]>
Date: Wed, 26 Sep 2007 08:51:35 +0930

Isn't virtualisation fundamentally about making one machine appear to
be many, at least to exernal devices and systems? Other than the
management and troubleshooting of the virtual environment itself, I'm
struggling to see that many applications of exposing the "truth" via
structured node addressing.

Structured MAC addressing might be of use, if it is necessary for each
virtual host to have a different one. Using the locally assigned MAC
address space would be the way to achieve that if it is important. 

If you need a multicast group just for the virtual hosts, you could
just use conventional multicast methods, and then only have the virtual
hosts join that multicast group.

Alternatively, you could create a virtual network/link within the
physical host, and then only have the virtual hosts be a member of that
link. That would mean that link-local multicasts would only go to the
virtual hosts. Making one of the virtual hosts an IPv6 router connected
to the virtual link and the upstream "real" network would then provide
access to the hosts sitting on this virtual network.

On Wed, 26 Sep 2007 10:46:55 +1200

---

From: <[email-masked]>
Date: Wed, 26 Sep 2007 10:38:11 +0100

> Alternatively, you could create a virtual network/link within 
> the physical host, 

This is precisely what machine virtualization already does. And many
setups involve a set of physical hosts providing resources, and a set of
virtual machines consuming resources. A management system migrates the
virtual machines from host to host as it tries to make the best use of
the resources. At any given point in time, the only way to truly know
what virtual machines are on a given physical host is to ask the
physical host.

Since the virtual machines use virtual network interfaces provided by
the physical host, this physical host can see MAC addresses and IP
addresses.

As a management problem, this can be easily solved by an agent which
runs on the physical hosts therefore I don't think the IETF needs to do
work on this problem. What would be good is for more people to implement
pure IPv6 networks on their virtual machine infrastructure and write
about it.

Since virtualization increases the number of IP addresses consumed per
physical machine, it could lead to IPv4 exhaustion happening sooner
rather than later. By using pure IPv6 on the virtual machines there is
effectively no limit to the number of addresses that can be used, and if
someone wants to implement some kind of structured numbering system in
their /64 subnet, the bits are freely available to do this.

This USENIX paper:
http://www.usenix.org/events/usenix06/tech/menon/menon_html/index.html
Optimizing Network Virtualization in Xen
provides some information on how one of the more popular virtualization
environments handles networking.

--Michael Dillon

---

From: Mark Smith <[email-masked]>
Date: Thu, 27 Sep 2007 06:37:38 +0930

> the physical host, this physical host can see MAC addresses and IP

I'm guessing that the virtual hosts/virtual network is bridged on to
the physical network, so the external physical hosts and the virtual
hosts are layer 2 adjacent. Where I think my suggestion is different
was the idea that this virtual network is routed "onto" the physical
segment, meaning that a link local multicast on the virtual network
would only be seen by the virtual hosts.

I think the bridging idea is a better one because it avoids introducing
a layer 3 hop. However if you need to reduce layer 2 neighbour
adjacencies on your physical / virtual network, or need the link-local
multicast only reaches peer virtual hosts, I think setting up a virtual
router would be a reasonable way to do it.

> environments handles networking.

Thanks for the ref, I'll have a look.

Regards,
Mark.