[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [nvrg-bof] What is Network Virtualization?




Andreas Wundsam wrote:
Hi,


Joe Touch schrieb:
Nick Feamster wrote:
I agree. unneling is a *mechanism* by which links can be instantiated
over a shared physical infrastructure, but the question "What is
network virtualization?" is really a what question (tunneling answers
"How?", not "What?")
If that's true, then why is the Internet not already a virtual net, 
e.g., supporting different transport protocols over IP? IP is shared 
by different transports. Similarly, ethernet supports different 
network protocols.
I would think think that the key difference is the level of transparency 
and information hiding offered. Virtualization generally is transparent 
to the user, layering is not. TCP knows it is running on top of IP. A 
network stack running in a virtualized network would believe itself to 
be running alone on a dedicated physical infrastructure, when in fact it 
could coexist with other networks on the same hardware. The analogy with 
Virtual Memory holds here - a program running on virtual memory does not 
have to know other processes are existing on the system -- all it sees 
is a flat address space starting at 0. Hence, I would consider VLANs, 
Tunnels etc. all proper mechanisms for virtualizing links, but only in 
combination with a mechanism that hides their existence and specifics 
from the user.
VLANs don't qualify by your requirements above; VLANs don't own a 
particular fraction of a link, so they could detect other VLANs on the 
same link. Further, VLANs virtualize the link, but not the endpoints - 
e.g., to have two segments with the same destination address and 
different VLANs still go to the same physical destination.
As to layering, TCP knows it's running on IP, but not that IP is running 
on ethernet (or, in fact, what it's running on). Ignorance of 
non-adjacent layers is a already a property of layering.
Support for separate stacks would include virtual hosts alone as 
sufficient to make a virtual network (e.g., running two OS's on the same 
hardware, which I don't think makes sense.
I still think VNs need a layer of indirection; there are plenty of 
interesting things that don't, and things that support VNs that don't, 
but they're not key to the concept. It's that layer of indirection that 
I describe as a tunnel - there are many ways to accomplish that, 
including shim headers (HIP, SHIM6) as well as encapsulation.
Joe

Attachment: signature.asc
Description: OpenPGP digital signature


Note Well: Messages sent to this mailing list are the opinions of the senders and do not imply endorsement by the IETF.