Cette section décrit quelques-unes des rubriques avancées relatives à l'utilisation des fonctions virtuelles SR-IOV.
Lorsque vous utilisez des fonctions virtuelles SR-IOV, tenez compte des problèmes suivants :
Les fonctions virtuelles SR-IOV peuvent uniquement utiliser les adresses MAC affectées par Logical Domains Manager. Si vous utilisez d'autres commandes réseau du SE Oracle Solaris pour modifier l'adresse MAC du domaine d'E/S, les commandes risquent d'échouer ou de ne pas fonctionner correctement.
A l'heure actuelle, le groupement de liaisons des fonctions virtuelles réseau SR-IOV dans le domaine d'E/S n'est pas prise en charge. Si vous tentez de créer un groupement de liaisons, il risque de ne pas fonctionner comme prévu.
Vous pouvez créer des services d'E/S virtuels et les affecter à des domaines d'E/S. Ces services d'E/S virtuels peuvent être créés sur la fonction physique même à partir de laquelle les fonctions virtuelles sont créées. Par exemple, vous pouvez utiliser un périphérique réseau 1 Gbit/s intégré (net0 ou igb0) en tant que périphérique backend réseau pour un commutateur virtuel et créer statistiquement des fonctions virtuelles à partir de ce même périphérique de fonction physique.
Une fonction virtuelle SR-IOV offre le même type de fonctionnalité que n'importe quel autre périphérique PCIe, notamment la possibilité d'utiliser une fonction virtuelle en tant que périphérique d'initialisation d'un domaine logique. Une fonction virtuelle de réseau par exemple peut être utilisée pour lancer l'initialisation via le réseau afin d'installer le SE Oracle Solaris dans un domaine d'E/S.
Les pilotes de périphérique d'une fonction physique SR-IOV peuvent exporter des propriétés spécifiques aux périphériques Celles-ci peuvent être utilisées pour régler l'allocation des ressources de la fonction physique ainsi que celle de ses fonctions virtuelles. Pour plus d'informations sur les propriétés, reportez-vous à la page de manuel relative au pilote de la fonction physique, comme par exemple les pages de manuel igb(7D) et ixgbe(7D).
La commande ldm list-io -d affiche les propriétés spécifiques au périphérique exportées par le pilote de périphérique de la fonction physique spécifiée. Les informations de chaque propriété incluent un nom, une description succincte, une valeur par défaut, des valeurs maximales et un ou plusieurs des indicateurs suivants :
Concerne une fonction physique
Concerne une fonction virtuelle
Paramètre en lecture seule ou à caractère informatif uniquement
primary# ldm list-io -d pf-name
Utilisez la commande ldm create-vf ou la commande ldm set-io pour définir les propriétés de lecture-écriture d'une fonction physique ou virtuelle. Notez que pour définir une propriété spécifique au périphérique, vous devez utiliser la méthode statique. Voir la section SR-IOV statique.
L'exemple suivant montre les propriétés spécifiques au périphérique exportées par le périphérique SR-IOV Intel 1Gbit/s intégré :
primary# ldm list-io -d /SYS/MB/NET0/IOVNET.PF0 Device-specific Parameters -------------------------- max-config-vfs Flags = PR Default = 7 Descr = Max number of configurable VFs max-vf-mtu Flags = VR Default = 9216 Descr = Max MTU supported for a VF max-vlans Flags = VR Default = 32 Descr = Max number of VLAN filters supported pvid-exclusive Flags = VR Default = 1 Descr = Exclusive configuration of pvid required unicast-slots Flags = PV Default = 0 Min = 0 Max = 24 Descr = Number of unicast mac-address slots
Dans l'exemple suivant, la propriété unicast-slots est définie sur 8 :
primary# ldm create-vf unicast-slots=8 /SYS/MB/NET0/IOVNET.PF0
La création de VNIC Oracle Solaris 11 est prise en charge sur les fonctions virtuelles SR-IOV. Cependant, le nombre de VNIC pris en charge est limité au nombre d'adresses MAC alternatives (propriété alt-mac-addrs) attribuées à la fonction virtuelle. Veillez à affecter un nombre suffisant d'adresses MAC alternatives lorsque vous utilisez des VNIC sur la fonction virtuelle. Utilisez la commande ldm create-vf ou la commande ldm set-io pour définir les adresses MAC alternatives à l'aide de la propriété alt-mac-addrs.
L'exemple suivant illustre la création de quatre cartes d'interface réseau virtuelles sur une fonction virtuelle SR-IOV. La première commande affecte des adresses MAC alternatives au périphérique de fonction virtuelle. Cette commande utilise la méthode d'allocation automatique pour allouer quatre adresses MAC alternatives au périphérique de fonction virtuelle /SYS/MB/NET0/IOVNET.PF0.VF0 :
primary# ldm set-io alt-mac-addrs=auto,auto,auto,auto /SYS/MB/NET0/IOVNET.PF0.VF0
La commande suivante démarre le domaine d'E/S ldg1. Etant donné que la propriété auto-boot? a pour valeur true dans cet exemple, le SE Oracle Solaris 11 est également initialisé dans le domaine d'E/S.
primary# ldm start ldg1
La commande suivante utilise la commande dladm d'Oracle Solaris 11 dans le domaine invité pour afficher la fonction virtuelle possédant des adresses MAC alternatives. Cette sortie indique que la fonction virtuelle net30 possède quatre adresses MAC alternatives.
guest# dladm show-phys -m LINK SLOT ADDRESS INUSE CLIENT net0 primary 0:14:4f:fa:b4:d1 yes net0 net25 primary 0:14:4f:fa:c9:eb no -- net30 primary 0:14:4f:fb:de:4c no -- 1 0:14:4f:f9:e8:73 no -- 2 0:14:4f:f8:21:58 no -- 3 0:14:4f:fa:9d:92 no -- 4 0:14:4f:f9:8f:1d no --
Les commandes suivantes créent quatre cartes VNIC. Notez que toute tentative de créer plus de carte d'interface réseau virtuelles que spécifié en ayant recours à des adresses MAC alternatives est vouée à l'échec.
guest# dladm create-vnic -l net30 vnic0 guest# dladm create-vnic -l net30 vnic1 guest# dladm create-vnic -l net30 vnic2 guest# dladm create-vnic -l net30 vnic3 guest# dladm show-link LINK CLASS MTU STATE OVER net0 phys 1500 up -- net25 phys 1500 up -- net30 phys 1500 up -- vnic0 vnic 1500 up net30 vnic1 vnic 1500 up net30 vnic2 vnic 1500 up net30 vnic3 vnic 1500 up net30