Increase VMBus buffer sizes to optimize network throughput to guest VMs

Increasing the VMBus buffer size within the VM, can increase network throughput to guest VMs, in some cases, very significantly indeed. memory and updating the buffer size requires, per each guest VM, adding two registry keys. To increase the buffer size, we first need GUID and index associated with network adapter. In the guest VM, […]

Increasing the VMBus buffer size within the VM, can increase network throughput to guest VMs, in some cases, very significantly indeed. memory and updating the buffer size requires, per each guest VM, adding two registry keys. To increase the buffer size, we first need GUID and index associated with network adapter. In the guest VM, open Device Manager, expand Network Adapters , right click Microsoft Virtual Machine Bus Network Adapter and choose Properties (if you’ve a driver marked “(emulated)”, you should take a detour to install Integration Services from the VM’s Action menu, then add a new synthetic network driver through VM setup. See here, step 3 for instructions). On Network Adapter Properties dialog, select Details tab. Select Driver Key in Property pull-down menu. Record the GUID\index found in the Value box. Open regedit and navigate to: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{GUID}\{index}. Right click index number and create two new DWORD values, entitled ReceiveBufferSize and SendBufferSize. These values measure the memory allocated to buffers in 1Kb units. So, 0x400 equates to 1,024Kb buffer space (the default, 640 buffers). In this example, we’ve doubled the buffer size to 0x800, or 2,048Kb of memory. Your workloads and networking traffic may not need increased buffers; however, these days, 4Mb of RAM isn’t a tremendous amount of memory to invest as an insurance policy against packet loss. Now, if only I could increase a few buffers and alleviate congestion on my daily commute!

[Source]