Remote Desktop Services Fair Share

Dynamic Fair Share Scheduling (DFSS) è una funzionalità inclusa nei servizi Remote Desktop di Windows Server che distribuisce dinamicamente le risorse di sistema a livello di CPU, Network e disco tra le sessioni attive. Lo scopo è quello di evitare che un elevato utilizzo di risorse hardware da parte di una singola sessione possa avere impatti negativi sulle performance di tutte le altre sessioni attive sul server.

DFSS è stato introdotto in Windows Server 2008 R2 ed il bilanciamente era attivo solamente a livello di CPU. A partire da Server 2012 le funzionalità sono state estese a livello di Network e di disco.

In linea teorica le risorse disponibili dovrebbero venire distribuite equamente tra le sessioni attive di un Session Host. Quella che sotto certi aspetti potrebbe sembrare una funzionalità interessante potrebbe essere in realtà  la causa di alcune problematiche.  In uno scenario ideale dove le applicazioni in esecuzione su tutte le sessioni attive necessitano per tutto il tempo di risorse in egual misura tutto sarebbe perfetto. Nel caso però che alcune applicazioni richiedano picchi di risorse e che queste vengano limitate da Fair Share i tempi di elaborazione potrebbero aumentare in maniera significativa. In alcuni scenari è stato riscontrato che anche con una singola sessione attiva le risorse fossero comunque sensibilmente limitate. Se si riscontrano quindi inspiegabili problemi di performance di applicazioni eseguite in modalità RDS bisognerebbe provare ad eseguire le stesse dalla console del server per capire se Fair Share può essere la causa dei problemi.

Fair Share Scheduling viene abilitato di default con l’installazione dei servizi Desktop Remoto ma è possibile disattivarlo in un secondo tempo andando a modificare le seguenti chiavi di registry:

CPU:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Quota System
EnableCpuQuota = 0

DISCO:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TSFairShare\Disk
EnableFairShare = 0

NETWORK:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TSFairShare\NetFS
EnableFairShare = 0

E’ possibile gestire lo scheduling della CPU anche attraverso la Group Policy “Configurazione computer / Modelli amministrativi / Componenti di Windows / Servizi Desktop remoto / Host sessione di Desktop remoto / Connessioni / Disattiva Pianificazione di condivisione equa CPU”.

 

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Dimostra che sei un umano. *