Hi
First of all I recommend the book "VMware vSphere 5.1 Clustering Deepdive" which describes these features way better and in more detail.
But let me try to give you a basic understanding.
SOIC is a mechanism to apply fairness between VMs and it will react in case of contention. SIOC monitors disk latency and if a configured threshold gets violated, SIOC will react to it by dynamically adjusting the host I/O queue (based on disk shares) to prevent a single VM from flodding a datastore.
In adition to that vSphere 5.0 introduced a workload injector for SIOC to generate random read I/Os to characterize datastores and their capabilities.
Storage DRS can move the VM’s disks if the datastore utilization threshold or the latency threshold is exceeded. So storage DRS can rebalance workloads to possibly reduce the latency of a virtual machine. If the latency remains high and reaches the SOIC threshold, SOIC will reduce the hosts IO queue. So it’s recommended to set SOIC threshold higher as the threshold for sDRS, to give sDRS a chance to rebalance workloads.
Please correct me if I’m wrong. Sometimes is hard to explain something in a foreign language;)
Regards
Patrick