Sdílet prostřednictvím


Virtuální porty (VPorts)

Virtuální port (VPort) je datový objekt, který představuje interní port na přepínači síťové karty síťového adaptéru, který podporuje virtualizaci jednoho kořenového V/V (SR-IOV). Každý přepínač síťové karty má následující porty pro připojení k síti:

  • Jeden externí fyzický port pro připojení k externí fyzické síti.

  • Jeden nebo více interních VPortů, které jsou připojené k fyzické funkci PCI Express (PF) nebo virtuálním funkcím (VFS).

    • PF je připojen k nadřazenému oddílu Hyper-V a je vystaven jako virtuální síťový adaptér v operačním systému pro správu, který běží v tomto oddílu.
    • VF je připojen k Hyper-V podřízenému oddílu a je představen jako virtuální síťový adaptér v hostovaném operačním systému, který běží v tomto oddílu.

Přepínač síťových adaptérů přemísní síťový provoz z fyzického portu na jeden nebo více virtuálních portů. To poskytuje virtualizovaný přístup k základnímu fyzickému síťovému rozhraní.

Každý VPort má jedinečný identifikátor (VPortId), který je jedinečný pro přepínač síťové karty v síťovém adaptéru. Výchozí port VPort vždy existuje na výchozím přepínači síťové karty a nelze jej nikdy odstranit. Výchozí VPort má VPortId NDIS_DEFAULT_VPORT_ID.

Když ovladač miniportu PF zpracovává požadavek na metodu identifikátoru objektu (OID) OID_NIC_SWITCH_CREATE_SWITCH, vytvoří přepínač síťové karty (NIC) a výchozí virtuální port (VPort) pro tento přepínač. Výchozí VPort je vždy připojen k PF a je vždy v provozním stavu.

Nevýchozí VPorty jsou vytvořeny prostřednictvím požadavků metod OID OID_NIC_SWITCH_CREATE_VPORT. K jedné VF lze připojit pouze jeden nevýchozí VPort. Po připojení je výchozí hodnota v provozním stavu. Jeden nebo více nedefaultních virtuálníchportů lze také vytvořit a připojit k PF. Tyto virtuální porty jsou při vytváření nefunkční a mohou být zprovozněny prostřednictvím nastavení identifikátoru OID_NIC_SWITCH_VPORT_PARAMETERS.

Poznámka

Jakmile se VPort zprovozní, může se stát nefunkční pouze v případě, že se odstraní prostřednictvím požadavku OID OID_NIC_SWITCH_DELETE_VPORT.

Každý port VPort má přidružený jeden nebo více dvojic hardwarových front pro příjem a přenos paketů. Výchozí dvojice front na síťovém adaptéru je vyhrazená pro použití ve výchozím VPortu. Páry front pro virtuální porty, které nejsou výchozí, se přidělují a přiřazují při vytváření virtuálního portu prostřednictvím požadavku OID_NIC_SWITCH_CREATE_VPORT.

Nepředvolené VPorty se vytvářejí a konfigurují prostřednictvím požadavků metod OID OID_NIC_SWITCH_CREATE_VPORT. Výchozí VPorty a nevýchozí VPorty se překonfigurují prostřednictvím požadavků na nastavení OID OID_NIC_SWITCH_VPORT_PARAMETERS. Každý požadavek OID obsahuje NDIS_NIC_SWITCH_VPORT_PARAMETERS strukturu, která určuje následující parametry konfigurace:

  • Funkce PCIe, ke které je připojen VPort.

    Každý VPort může být kdykoli připojen k PF nebo k VF. Po vytvoření a připojení VPortu k funkci PCIe nelze přílohu dynamicky změnit na jinou funkci PCIe.

    Poznámka

    Výchozí port VPort je vždy připojen k PF na síťovém adaptéru.

    Počínaje verzí NDIS 6.30 ve Windows Serveru 2012 je možné k VF připojit pouze jeden nedefault VPort. K PF je ale možné připojit několik nedefaultních virtuálníchportů spolu s výchozím VPortem.

  • Počet dvojic hardwarových front, které jsou přiřazeny k VPortu.

    Každý VPort má sadu dvojic hardwarových front, které jsou pro něj k dispozici. Každý pár front se skládá ze samostatné přenosové a přijímací fronty na síťovém adaptéru.

    Páry front jsou omezenými prostředky na síťovém adaptéru. Celkový počet dvojic front vyhrazených pro použití výchozím a nedefaultním VPorts se určuje při vytvoření přepínače NIC. To umožňuje, aby se počet párů front přiřazených k výchozímu VPortu lišil od počtu u nevýchozích VPortů.

    Každý nedefaultní virtuální port je možné nakonfigurovat tak, aby měl jiný počet párů front. Je to známo jako asymetrické přidělování párů front. Pokud síťová karta neumožňuje takové asymetrické přidělení, je každý nedefault VPort nakonfigurovaný tak, aby měl stejný počet párů front. To se označuje jako symetrické přidělení párů front. Další informace najdete v tématu symetrické a asymetrické přiřazení párů front.

    Poznámka

    Ovladač miniportu PF hlásí, jestli podporuje asymetrické přidělování dvojic front během MiniportInitializeEx. Další informace naleznete v tématu Inicializace ovladače PF Miniport.

    Počet párů front přiřazených jednotlivým VPortům se dynamicky nemění. Počet párů front přiřazených k VPortu se po vytvoření VPortu nedá změnit.

    Poznámka

    Jeden nebo více párů front přiřazených k nedefaultním virtuálnímportům lze použít pro škálování na straně příjmu (RSS) ovladačem miniportu VF, který běží v hostovaném operačním systému.

  • Parametry řízení přerušení pro VPort.

    Pro různé porty VPorts je možné zadat různé typy moderování přerušení. Díky tomu může virtualizační stack řídit počet přerušení vygenerovaných konkrétním VPortem.

Kromě parametrů konfigurace mohou nadřazené ovladače nakonfigurovat filtry příjmu pro každý VPort vydáním metodických požadavků OID OID_RECEIVE_FILTER_SET_FILTER. NIC přepínač provádí zadané filtrování příjmu pro každý VPort.

Parametry filtru příjmu pro VPorts zahrnují podmínky filtrování paketů, například seznam adres MAC (Media Access Control) a identifikátorů virtuální sítě LAN (VLAN). Filtry pro adresy MAC a identifikátory VLAN jsou vždy specifikovány společně v NDIS_RECEIVE_FILTER_PARAMETERS, spojené s požadavkem OID_RECEIVE_FILTER_SET_FILTER. Přepínač síťové karty musí filtrovat příchozí pakety na přepínač, jehož cílová adresa MAC a identifikátor sítě VLAN odpovídají všechny podmínce filtru příjmu nastavené na portu VPort. Přepínač síťové karty filtruje pakety přijaté z jiného VPortu nebo z externího fyzického portu. Pokud paket odpovídá filtru, musí ho přepínač síťové karty přesměrovat na VPort.

Na portu VPort je možné nastavit více dvojic identifikátorů MAC a identifikátorů sítě VLAN. Pokud je nastavena pouze adresa MAC, filtr příjmu určuje, že VPort by měl přijímat pakety, které odpovídají následujícím podmínkám:

  • Cílová adresa MAC paketu odpovídá adrese MAC filtru.

  • Paket má značku VLAN nebo (pokud je přítomna značka VLAN) identifikátor VLAN s hodnotou nula.

Předvolby jiné než výchozí VPorts jsou odstraněny prostřednictvím požadavků na nastavení OID OID_NIC_SWITCH_DELETE_VPORT. Výchozí VPort se odstraní pouze tehdy, když je přepínač síťového rozhraní odstraněn prostřednictvím nastavení OID požadavku OID_NIC_SWITCH_DELETE_SWITCH.