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

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





Jennifer Rexford wrote:
Joe,
A _virtual network_ is a network composed of tunnels, virtual hosts,
and/or virtual gateways. A tunnel is a link that encapsulates for
control purposes, but reaches only the existing endpoints (this
distinguishes it from how a native L3 uses a native L2). A virtual host
is a network node that adds or removes headers, and has at least one
tunnel endpoint in a given virtual network. A virtual gateway is a
network node that does not add or remove headers, and has at least two
tunnel endpoints in a given virtual network.

That strikes me as a definition of a virtual network, rather than a definition of network virtualization.

That seems like saying that memory virtualization is different from virtual memory.

You could view network virtualization as a *platform* for supporting multiple virtual network topologies on a shared substrate

I agree in the sense that NV is a means to create a VM. I disagree about the "shared substrate" part - it's the tunnels that define the virtualization in my definition; how devices are shared is not directly relevant (that's mechanism; see the end of this post).

The analogy to VM is useful here. There are many ways to achieve VM, but they do not all involve sharing physical memory - they involve _decoupling_ the network architecture from the components that support that architecture - whether real or emulated. E.g., VM still has value when there is a very large (essentially unbounded) amount of RAM -- it lets each process start at address 0, avoids needing to know how much memory each process will consume a priori but still allows the addresses to be contiguous, and keeps processes from accessing each others' memory. There is no sharing, and yet the abstraction of virtualization is still important.

-- that is, a platform that has the ability to support or "host" (multiple) virtual topologies (each consisting of multiple virtual nodes and virtual links) running directly in the underlying substrate. For example, while an (IP) network like the Internet can carry packets on behalf of overlay links (i.e., tunnels) between end hosts that span multiple underlying router hops, that does not necessarily mean that the Internet substrate itself supports network virtualization, because the overlay links might run over (rather than in) the underlying substrate, and the virtual nodes run outside of the substrate (e.g., on end hosts).

Asking what it means for "a substrate to support NV" is a different question than asking what VN or NV is, IMO.

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.