Delen via


Filterlaag

Een filterlaag is een punt in de TCP/IP-netwerkstack waarin netwerkgegevens worden doorgegeven aan de filterengine voor vergelijking met de huidige set filters. Elke filterlaag in de netwerkstack wordt geïdentificeerd door een unieke filterlaag-id.

Wanneer een filter wordt toegevoegd aan de filterengine, wordt het toegevoegd aan een aangewezen filterlaag waar de netwerkgegevens worden gefilterd. Specifieke gegevensvelden worden beschikbaar gesteld voor elke filterlaag voor verwerking door de filters die zijn toegevoegd aan de filterengine op die laag. Als de filterengine de netwerkgegevens doorgestuurd naar een oproep voor extra verwerking, worden deze gegevensvelden en alle metadata die beschikbaar zijn op die filterlaag opgenomen.

Run-time filterlaag-id's (FWPS_XXX) worden gebruikt door callout drivers in de kernelmodus. beheerfilterlaag-id's (FWPM_XXX) worden gebruikt door FwpmXxx-functies die communiceren met de Base Filtering Engine (BFE) vanuit de gebruikersmodus of kernelmodus (bijvoorbeeld FwpmFilterAdd0).

De FWPS-gegevenstypen zijn kleiner dan hun FWPM-tegenhangers: de FWPM-filterlaag-id's zijn GUID's (128 bits), terwijl de id's van de FWPS-filterlaag LUID's(64 bits). De kleinere grootte voor FWPS-gegevenstypen verbetert de systeemprestaties omdat vergelijkingen van gehele getallen sneller zijn dan GUID-vergelijkingen voor realtime verkeer, en het kernelgeheugen verwerkt FWPS-typen efficiënter.