Were you wondering if these two beautiful technologies when used with NFS would collide? Well look no further as this vSphere Blog explains that they in fact compliment eachother! The below insert was borrowed from blogs.vmware.com.
Intro to Storage I/O Control
SIOC was covered in a previous blog post. Details can be found here – https://blogs.vmware.com/vsphere/2011/09/storage-io-control-enhancements.html. In a nutshell, if SIOC detects that a pre-defined latency threshold for a particular datastore has been exceeded, it will throttle the amount of I/O a VM can queue to that datastore based on a ‘shares’ mechanism. When the contention is alleviated, SIOC will stop and VMs can then begin to use the datastore without any throttling. This avoids the ‘noisy neighbor’ problems when one VM can hog all the bandwidth to a shared datastore. The point to note here is that SIOC is working on a per VM basis, and deals with datastore objects.
SIOC was first introduced in vSphere 4.1, but only for block storage devices (FC, iSCSI, FCoE) only. In vSphere 5.0, we introduced SIOC support for NFS datastores.
Intro to Network I/O Control (NIOC)
There is a nice overview of NIOC on the networking blog here – https://blogs.vmware.com/networking/2010/07/got-network-io-control.html. Again, in a nutshell, NetIOC allows you to define a guaranteed bandwidth for different vSphere network traffic types.
NIOC uses a software approach to partitioning physical network bandwidth among the different types of network traffic flows. For example, you can guarantee a minimum NFS bandwidth/latency when a vMotion operation is initiated on the same network & prevent the vMotion operation from having an impact on the NFS traffic flow. The point to note here is that NIOC is working on a network traffic stream, e.g. NFS, and deals with NIC ports.
Go hereto read all about how these technologies compliment eachother.