Windows 2012 R2 – Layman Introduction to Network Virtualization

Very few people knew about Microsoft version of Network Virtualization when it all started with Microsoft Windows 2012 and System Center Virtual Machine Manager 2012. The technology was new and very few people were able to get it right with the limited set of documentation available. Since Windows Server 2012 R2 and SCVMM 2012 R2 have released, Network Virtualization has matured and now it’s been widely talked about. I still remember my first time working with Network Virtualization in the lab here at Iron Networks; I wasn’t sure what I was doing 🙂

Network Virtualization secure multi-tenant solution which provides a virtual network abstraction on top of a physical network. This abstraction provides virtual networks for different tenants to virtual machines which operate the same as a physical network, but still sharing the same address space as other tenants. For example, one tenant may want to use the address space of 192.168.10.0/24. If there is another tenant who wants to use the same address space, they cannot without using the Network Virtualization. With Network Virtualization, two or more tenants can share the same addresses on their respective virtual machines without disrupting the networks of other tenants. So, two tenants can use the same 192.168.10.0/24 network to address their virtual machines. Well, how this all works in the background is another topic and I will summarize it sometime soon in another blog entry. For now, let’s focus on the components required for the Network Virtualization to work.

For Network Virtualization to work properly, there are different components required, such as;

  1. Host Machine(s) – Windows Server 2012 or Windows Server 2012 R2 Hyper-V Server which will host the tenant virtual machine. This could be a standalone server or could be clustered Hyper-V servers.
  2. SCVMM 2012 R2 – System Center Virtual Machine Manager 2012 R2 to configure and manage the different bits and pieces together. Although, Network Virtualization can be configured and managed through PowerShell, but using SCVMM reduces the work by automating everything through its inbuilt modules. SCVMM defined the virtualization policy.
  3. NVGRE Gateway – This is a Windows Server 2012 R2 Hyper-V machine with multiple virtual machines running. Each virtual machine can host multiple tenant networks and provides bi-directional external connectivity to the virtual machines. The gateway is required to route the traffic between the NVGRE and Non-NVGRE networks. The NVGRE gateway supports Site-to-Site VPN connections, NAT and Direct Routing. One NVGRE virtual machine gateway can support up to 200 S2S connections and 50 Virtual Networks (which can also translate to tenants). Different kind of topologies are explained here at http://technet.microsoft.com/en-us/library/jj134174.aspx
  4. Provide Address Network – PA Network is a unique network and the IP addresses are assigned to each Hyper-V host that is routable across the physical network infrastructure. Each Hyper-V host requires at least one PA to be assigned.
  5. Tenant Network – Tenant networks are the subnets which will be used to assign IP addresses to the tenant virtual machines hosted inside the NVGRE fabric.

Cheers !!