vSphere 6.5 et les versions ultérieures prennent en charge la communication RDMA (remote direct memory access) entres des machines virtuelles qui disposent d'adaptateurs réseau RDMA paravirtualisés (PVRDMA).
Présentation de RDMA
RDMA offre un accès direct à la mémoire depuis la mémoire d'un ordinateur vers la mémoire d'un autre ordinateur sans impliquer le système d'exploitation ni le CPU. Le transfert de la mémoire est déplacé vers les adaptateurs HCA compatibles avec la technologie RDMA. Un adaptateur réseau PVRDMA fournit un accès direct à la mémoire distante dans un environnement virtuel.
Utilisation de RDMA dans vSphere
Dans vSphere, une machine virtuelle peut utiliser un adaptateur réseau PVRDMA pour communiquer avec d'autres machines virtuelles équipées de périphériques PVRDMA. Les machines virtuelles doivent être connectées au même vSphere Distributed Switch.
Le périphérique PVRDMA sélectionne automatiquement la méthode de communication entre les machines virtuelles. Pour les machines virtuelles qui s'exécutent sur le même hôte ESXi avec ou sans périphérique RDMA physique, le transfert de données est un memcpy entre les deux machines virtuelles. Le matériel RDMA physique n'est pas utilisé dans ce cas.
Pour les machines virtuelles qui résident sur des hôtes ESXi différents et qui disposent d'une connexion RDMA physique, les périphériques RDMA physiques doivent être des liaisons montantes sur le commutateur distribué. Dans ce cas, la communication entre les machines virtuelles au moyen de PVRDMA utilise les périphériques RDMA physiques sous-jacents.
Pour deux machines virtuelles qui s'exécutent sur des hôtes ESXi différents, lorsque l'un des hôtes au moins ne dispose pas de périphérique RDMA physique, la communication se fait alors par le biais d'un canal TCP et les performances sont réduites.