vSphere Replication and Site Recovery Manager make it very easy to replicate your VMs to your DR site (ahem, once they are set up). Some customers asked me if there is any way to throttle the bandwidth used for replication. The good news is that there is a way in vMware software but it cannot be found in SRM. Unfortunately, it can only be found in the Enterprise Plus Edition of vSphere 5. It’s Network I/O Control in the Distributed vSwitch (DvS) in v5. I’m not going to go into a deep dive on Network I/O Control but I will recommend that you read the Network I/O Control best practices doc here.
To enable Network I/O Control we need to have a DvS in place. If we select the distributed switch and then select the Resource Application tab on the right, this gives us the “properties” option on the far right. By selecting the Properties option, you can enable Network I/O Control on the DvS. Once enabled you can see all of the System network resource pools. There is one at the bottom of the list labeled “vSphere Replication (VR) Traffic”. Selecting it and then clicking the “Edit Settings” link just below it opens up the settings window.
From here, you can edit the adapter shares. The shares are to balance the bandwidth so that network flows can use the bandwidth thats available from a given dvuplink. The shares are for a given dvUplink.
Alternatively, you can uncheck the Unlimited checkbox and set a host limit. Keep in mind that this is Megabits per sec, not MegaBytes. This is also the limit of the combined set of dvUplinks on a given host.
Lastly, a QOS priority tag can be used. The traffic will have a 802.1p tag applied to it. The IEEE does not standardize or mandate the use of the priority tag applied to the packets but the switches should treat higher tags with higher priority. The choices are None, 1-7.
While not the granular controls that we may wish for, say individual bandwidth controls on a per VM or per-site replication limits, these settings and options are a start. Hopefully in the future in vSphere Replication v2 we will have more granular controls for bandwidth throttling but until then, these are what we can use. Happy computing.