Servizio di rete
Il profilo di rete descrive gli oggetti usati per configurare il sistema per consentire alle macchine virtuali di comunicare in rete. Gli oggetti di rete globali, usati per configurare il commutatore di rete nel sistema operativo di gestione, includono le classi Msvm_VirtualEthernetSwitchManagementService, Msvm_VirtualEthernetSwitch e Msvm_EthernetSwitchPort . Gli oggetti di rete della macchina virtuale, usati per configurare la scheda di interfaccia di rete (NIC) nella macchina virtuale, includono le classi Msvm_EmulatedEthernetPort, Msvm_ResourceAllocationSettingData e Msvm_LANEndpoint .
La radice del profilo di rete globale è la classe Msvm_VirtualEthernetSwitch . Questa classe rappresenta un dispositivo commutatore virtuale nel sistema operativo di gestione. Msvm_VirtualEthernetSwitch è associato alle istanze della classe Msvm_SwitchPort , che rappresenta le porte nel commutatore virtuale. Le istanze delle classi Msvm_VirtualEthernetSwitch e Msvm_EthernetSwitchPort vengono create, eliminate e connesse tramite la classe Msvm_VirtualEthernetSwitchManagementService (non illustrata nella figura precedente).
Virtual Switch Management Service (VSMS) rappresenta il servizio di rete presente in un singolo host Hyper-V e contiene metodi per Msvm_VirtualEthernetSwitchManagementService usati per controllare la definizione, la modifica e la distruzione delle risorse di rete globali, ad esempio commutatori virtuali, porte switch e porte Ethernet interne.
La rappresentazione del dispositivo NIC Ethernet nella macchina virtuale è molto simile a quella di qualsiasi altro dispositivo, come descritto nel servizio di gestione del sistema virtuale. Le classi Msvm_EmulatedEthernetPort e Msvm_SyntheticEthernetPort rappresentano il dispositivo della scheda di interfaccia di rete virtuale e vengono configurate tramite un'istanza rasd (Msvm_ResourceAllocationSettingData) associata. L'unica caratteristica insolita di questa rappresentazione è che, quando viene creata un'istanza della macchina virtuale e a sua volta crea l'Msvm_EmulatedEthernetPort e i dispositivi Msvm_SyntheticEthernetPort , crea anche un'istanza di Msvm_LANEndpoint associata per la scheda di interfaccia di rete virtuale. Analogamente, quando la macchina virtuale viene salvata o disattivata e le istanze di Msvm_EmulatedEthernetPort e Msvm_SyntheticEthernetPort vengono eliminate definitivamente, viene eliminata anche l'istanza di Msvm_VmLANEndpoint associata. Lo scopo del Msvm_LANEndpoint è quello di fungere da ponte per la connessione di due porte di rete tra loro. In questo caso, viene usato per connettere una scheda di interfaccia di rete virtuale a una porta nel dispositivo del commutatore virtuale. In altre parole, connette le istanze di Msvm_EmulatedEthernetPort e Msvm_SyntheticEthernetPort nella macchina virtuale a una particolare istanza di Msvm_EthernetSwitchPort sul commutatore virtuale. Per connettere un commutatore all'esterno, è necessario associare la porta Ethernet fisica al Msvm_VirtualSwitch tramite BindExternalEthernetPort. In caso negativo, quando si connette un commutatore allo stack di rete host o alla scheda di interfaccia di rete interna, usare ConnectInternal per comunicare con l'host e non con l'esterno. Msvm_ActiveConnection connette una porta switch al Msvm_SwitchLANEndpoint a cui è connessa la porta all'interno di Hyper-V. L'esistenza di questo oggetto significa che la porta del commutatore e la Msvm_SwitchLANEndpoint sono attivamente connesse e la porta Ethernet associata a Msvm_LANEndpoint può comunicare con la rete tramite la porta del commutatore.