Network I/O controls together with Network Resource Pools allow for a sophisticated management of all the traffic types available on a Distributed Switch. There are number of built-in Network Resource Pools, as well the capacity to create user-defined pools. There built-in pools support the following traffic types:
- Fault Tolerance
- iSCSI
- NFS
- vMotion
- Management
- vSphere Replication (VR)
- Virtual Machine
The settings on these “System” Network Resource Pools can be modified – and no work has been done to assign them to a portgroup. VMware ESXi automatically recognises the traffic type leaving the host, and assigns the settings. By default all traffic is treated equally, except for Virtual Machine traffic which is given a share value of “High”.
These default settings can be adjusted to affect the traffic.
Optionally, user-defined Network Resource pools allow the administrator to define their own pools – and configure the custom settings. This consists of a proportional “share” value. This is a settings is usually configured with parameters of Low, Normal, Medium and High. A custom option allows allocation of a number such as 100. The label or numerical allow to set a high allocation of resources dependent on contention. Under normal operations when network resources are not scarce, the traffic types are able to use as much of the bandwidth available. However, when contention kicks in because of a lack of bandwidth the share system guarantees a predictable outcome. Typically, administrators allocate a higher share value to mission critical traffic such as iSCSI, NFS, Management and Virtual Machines – whereas ancillary traffic which is more expendable and used in background process such as vMotion or vSphere Replication. In addition to the share allocation, these built-in network resource pools an allocation of bandwidth can be granted per traffic type.
Enabling Network I/O Controls
By default Network I/O Controls is automatically enabled on the setting of Distributed Switch. You can confirm that is still enabled by navigating to Manage tab, Resource Allocation column
If this is not case:
1. Right-Click the Distributed Switch, and select Edit Settings
2. Under General, ensure that Network I/O Control is set to be Enabled.
Create a new User-defined Network Resource Pool
1. Click the Distributed Switch, and select the Manage tab, and the Resource Allocation column
2. Click the green plus + to create a new Network Resource Pool
In this case the Network Resource Pool only allows for 10Mps with a low share value together with a QoS tag of 0. QoS tags use the IEEE 802.1p tag system prioritise traffic at the physical switch. The higher the QoS setting the high priority allocated to that frame on the switch. The QoS Tags begin number at 0 and goes a high as 7.
0 – Background
1 – Best Efforts
2 – Excellent Efforts
3 – Critical Applications
4 – Video, <100ms latency
5 – Video < 10ms latency
6 – Internetwork Control
7 – Network Control
3. This process can be repeated to create as many classifications of traffic as you wish – in this case two user-defined network resource pools were created like so:
Allocate a Distribute Portgroup to Network Resource Pool
1. Next we can assign the Network Resource Pool to the correct portgroup(s). Right-click the portgroup, and select Edit Settings
2. Under General, click the pull-down list to assign the Network Resource Pool
3. Once assign it is possible to see which Network Resource Pool is allocated to which portgroup, and which virtual machines are affected by its settings by being configured for that portgroup.
If you wish to see user-defined Network Resource Pools in action vExpert Eric Sloof has a good video on his YouTube Channel –