Delen via


Uitbreidingen voor Filtering

Een Hyper-V uitbreiding voor uitbreidbare switchfilters kan pakketten inspecteren, wijzigen en invoegen in het uitbreidbare switchgegevenspad. Op basis van uitbreidbare switchpoort- en switchbeleidsinstellingen kan de extensie een pakket verwijderen of de levering ervan uitsluiten naar een of meer doelpoorten.

Filterextensies worden aangeroepen na het vastleggen van extensies in het gegevenspad voor inkomend verkeer en na de doorstuuruitbreidingen in het uitgaande gegevenspad. Zie Hyper-V Extensible Switch Data Pathvoor meer informatie over deze gegevenspaden.

Een filterextensie kan het volgende doen met pakketten die zijn verkregen op het gegevenspad voor inkomend verkeer:

  • Filter pakketverkeer en dwing aangepast poort- of switchbeleid af voor pakketlevering via de uitbreidbare switch. Wanneer de filterextensie pakketten filtert in het gegevenspad voor inkomend verkeer, kan het filterregels alleen toepassen op basis van de bronpoort en de netwerkadapterverbinding waaruit het pakket afkomstig is. Deze informatie wordt opgeslagen in de out-of-band-gegevens (OOB) van de NET_BUFFER_LIST structuur van een pakket en kan worden verkregen met behulp van de NET_BUFFER_LIST_SWITCH_FORWARDING_DETAIL macro.

    Opmerking Pakketten die zijn verkregen op het gegevenspad voor inkomend verkeer, bevatten geen doelpoorten. Het filteren van pakketten op basis van doelpoorten kan alleen worden uitgevoerd op pakketten die zijn verkregen op het uitgaande gegevenspad.

    Aangepaste beleidsregels worden gedefinieerd door de onafhankelijke softwareleverancier (ISV). Eigenschapsinstellingen voor dit beleidstype worden beheerd via de Hyper-V WMI-beheerlaag. De filterextensie wordt geconfigureerd met deze eigenschapsinstellingen via een OID-aanvraag (object-id) van OID_SWITCH_PORT_PROPERTY_UPDATE en OID_SWITCH_PROPERTY_UPDATE.

    Zie Het beheren van Hyper-V Uitbreidbaar switchbeleidvoor meer informatie over aangepaste uitbreidbare poort- of switchbeleidsregels.

    Opmerking Alleen doorstuuruitbreidingen kunnen standaardpoortbeleid afdwingen voor pakketlevering via de uitbreidbare switch.

  • Injecteer nieuwe, gewijzigde of gekloonde pakketten in het gegevenspad voor inkomend verkeer.

    Zie Hyper-V Uitbreidbare schakeloptie verzenden en ontvangenvoor meer informatie.

Een filterextensie kan het volgende doen met pakketten die zijn verkregen op het uitgaande gegevenspad:

  • Filter pakketverkeer en dwing aangepast poort- of switchbeleid af voor pakketlevering via de uitbreidbare switch. Wanneer de filterextensie pakketten in het uitgaande gegevenspad filtert, kunnen er filterregels worden toegepast op basis van de bron- of doelpoorten voor een pakket. Doelpoortgegevens worden opgeslagen in de OOB-gegevens van de NET_BUFFER_LIST structuur van een pakket. Extensies verkrijgen deze informatie door de GetNetBufferListDestinations functie aan te roepen.

  • Sluit de levering van het pakket uit aan een of meer uitbreidbare switchbestemmingspoorten. Hierdoor kan de filterextensie de levering van een pakket naar uitbreidbare switchpoorten uitsluiten.

    Zie Exclude Packet Delivery to Extensible Switch Destination Portsvoor meer informatie over het uitsluiten van pakketlevering naar uitbreidbare switchpoorten.

  • Beheer de verkeersstroom naar een of meer doelpoorten door het doorsturen van pakketten naar het uitgaande gegevenspad uit te stellen.

    Een filterextensie die ondersteuning biedt voor QoS-functionaliteit (Quality of Service) kan bijvoorbeeld onmiddellijk NdisFSendNetBufferLists aanroepen om pakketten die zijn opgegeven met een hogere prioriteitswaarde door te sturen. Afhankelijk van de verkeersstroom, kan het zijn dat de extensie pakketten met een lagere prioriteit op een later tijdstip wilt doorsturen.

  • Wijzig de pakketgegevens. Als de filterextensie de gegevens in een pakket moet wijzigen, moet het pakket eerst worden gekloond zonder dat de poortbestemmingen behouden blijven. Vervolgens moet de extensie het gewijzigde pakket injecteren in het gegevenspad voor inkomend verkeer. Hierdoor kunnen de onderliggende extensies beleidsregels afdwingen voor het gewijzigde pakket en kan de doorstuurextensie poortbestemmingen toevoegen.

    Zie Kloonpakketverkeervoor meer informatie.

Naast het inspecteren van OID-aanvragen en NDIS-statusindicaties, kan een filterextensie het volgende doen:

  • Veto op het maken van een uitbreidbare switch-poort of netwerkadapterverbinding door STATUS_DATA_NOT_ACCEPTED terug te sturen voor de toepasselijke uitbreidbare switch-OID's. De filterextensie kan bijvoorbeeld een aanvraag voor het maken van een poort vetoen door STATUS_DATA_NOT_ACCEPTED te retourneren wanneer het stuurprogramma een OID-setaanvraag van OID_SWITCH_PORT_CREATEontvangt.

    Opmerking: Filterextensies doen geen poorten of netwerkadapterverbindingen maken of verwijderen. De protocolgrens van de uitbreidbare switch gebruikt OID's om de onderliggende filterbesturingsprogramma's te informeren over het aanmaken of verwijderen van poorten of netwerkadapterverbindingen. Zie Hyper-V Uitbreidbare switchpoort- en netwerkadapterstatussenvoor meer informatie.

  • Veto de toevoeging of update van een uitbreidbaar switch- of poortbeleid door STATUS_DATA_NOT_ACCEPTED te retourneren voor de toepasselijke uitbreidbare switch-OID's. De filterextensie kan bijvoorbeeld de toevoeging van een poortbeleid vetoeren door STATUS_DATA_NOT_ACCEPTED te retourneren wanneer de extensie een OID-setaanvraag van OID_SWITCH_PORT_PROPERTY_ADDontvangt.

    Zie Beheren van Hyper-V Uitbreidbaar switchbeleidvoor meer informatie over uitbreidbaar switchbeleid.

Een filterextensie heeft de volgende vereisten:

  • Een filterextensie moet worden ontwikkeld als een NDIS-filterstuurprogramma dat ondersteuning biedt voor de uitbreidbare switchinterface.

    Voor meer informatie over filterstuurprogramma's, zie NDIS-filterstuurprogramma's.

    Zie Write Hyper-V Extensible Switch Extensionsvoor meer informatie over het schrijven van een filterextensie.

    Opmerking Het Windows-filterplatform (WFP) biedt een uitbreidbare switchfilterextensie (Wfplwfs.sys). Met deze extensie kunnen WFP-filters of uitroepstuurprogramma's pakketten onderscheppen langs het uitbreidbare Hyper-V switch-data pad. Hierdoor kunnen de filters of bijschriftstuurprogramma's pakketinspecties of -aanpassingen uitvoeren met behulp van de WFP-beheer- en systeemfuncties. Zie Windows Filtering Platformvoor een overzicht van WFP.

  • Het INF-bestand voor een filterextensie moet het stuurprogramma installeren als een wijzigingsfilterstuurprogramma. NDIS-bewakingsfilterstuurprogramma's kunnen niet worden geïnstalleerd in de uitbreidbare switchstuurprogrammastack.

    Zie Typen filterstuurprogramma'svoor meer informatie over het wijzigen van filterstuurprogramma's.

    Zie voor meer informatie over de INF-vereisten voor het wijzigen van filterstuurprogramma's Het configureren van een INF-bestand voor het wijzigen van het filterstuurprogramma.

  • De FilterClass waarde in het INF-bestand voor het filterstuurprogramma moet worden ingesteld op ms_switch_filter. Zie INF-vereisten voor Hyper-V uitbreidbare switchuitbreidingenvoor meer informatie.

  • Een willekeurig aantal filterextensies kan worden gebonden en ingeschakeld in de stuurprogrammastack voor elk exemplaar van een uitbreidbare switch. Standaard worden meerdere filterextensies gerangschikt op basis van het moment dat ze zijn geïnstalleerd. Meerdere filterextensies worden bijvoorbeeld gelaagd in de uitbreidbare stuurprogrammastack met de meest recent geïnstalleerde extensie die boven andere filterextensies in de stack is geplaatst.

    Nadat ze zijn gebonden en ingeschakeld in een uitbreidbaar switchexemplaren, kunnen de lagen van filterextensies in de uitbreidbare stuurprogrammastack opnieuw worden gerangschikt. Zie Hyper-V Uitbreidbare switchextensies opnieuw ordenenvoor meer informatie.