Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Omówienie filtrowania przełącznika wirtualnego
Filtrowanie przełącznika wirtualnego jest obsługiwane w systemie Windows 8 i nowszych wersjach systemu Windows.
Ta funkcja WFP umożliwia filtrowanie pól nagłówka MAC, nagłówka IP oraz portów warstwy wyższej protokołu, a także pól specyficznych dla przełącznika wirtualnego, takich jak port wirtualny (VPort) i identyfikator maszyny wirtualnej (VM ID). Warstwy te są wywoływane dla każdego pakietu osobno, dla wszystkich pakietów przechodzących przez przełącznik wirtualny. Te warstwy są dostępne za pomocą filtra rozszerzenia przełącznika wirtualnego, będącego rodzajem lekkiego sterownika filtru NDIS (LWF).
Sterownik wywoławczy wywołuje funkcję FwpsvSwitchEventsSubscribe0 w celu zarejestrowania punktów wejściowych dla zdarzeń warstwy przełącznika wirtualnego.
Punkty wejścia dla funkcji powiadomień zwrotnych są określone w strukturze FWPS_VSWITCH_EVENT_DISPATCH_TABLE0. Dostępne są następujące funkcje wywołania zwrotnego:
- FWPS_VSWITCH_FILTER_ENGINE_REORDER_CALLBACK0
- FWPS_VSWITCH_INTERFACE_EVENT_CALLBACK0
- FWPS_VSWITCH_LIFETIME_EVENT_CALLBACK0
- FWPS_VSWITCH_POLICY_EVENT_CALLBACK0
- FWPS_VSWITCH_PORT_EVENT_CALLBACK0
- FWPS_VSWITCH_RUNTIME_STATE_RESTORE_CALLBACK0
- FWPS_VSWITCH_RUNTIME_STATE_SAVE_CALLBACK0
Wyliczenie FWPS_VSWITCH_EVENT_TYPE definiuje wartości parametru eventType funkcji powiadomień przełącznika wirtualnego.
Sterownik wywołań musi ostatecznie wywołać FwpsvSwitchEventsUnsubscribe0, aby zwolnić zasoby systemowe.
Jeśli sterownik wywołania zwróci STATUS_PENDING z funkcji powiadomień WFP, program WFP zwróci STATUS_PENDING do procedury obsługującej żądania OID. Sterownik wywołania musi wywołać funkcję FwpsvSwitchNotifyComplete0, aby ukończyć operację w toku. Po wywołaniu FwpsvSwitchNotifyComplete0 WFP wywołuje funkcję NdisFOidRequestComplete, aby ukończyć OID przełącznika wirtualnego.
Wywołania zwrotne nie powinny dodawać ani usuwać filtrów WFP synchronicznie w kontekście funkcji powiadomień. Ponadto, jeśli funkcja powiadamiania umożliwia wywołaniu zwrotnemu zwrócenie STATUS_PENDING, i jeśli odwołanie zwróci STATUS_PENDING, wówczas odwołanie nie powinno dodawać ani usuwać filtrów WFP przed ukończeniem powiadomienia.
Warstwa filtru i pola Wirtualnego Przełącznika WFP
Identyfikatory warstwy filtrującej w czasie wykonywania dla filtrowania przełączników wirtualnych obejmują:
- FWPS_LAYER_INGRESS_VSWITCH_ETHERNET
- FWPS_LAYER_EGRESS_VSWITCH_ETHERNET
- FWPS_LAYER_INGRESS_VSWITCH_TRANSPORT_V4
- FWPS_LAYER_INGRESS_VSWITCH_TRANSPORT_V6
- FWPS_LAYER_EGRESS_VSWITCH_TRANSPORT_V4
- FWPS_LAYER_EGRESS_VSWITCH_TRANSPORT_V6
identyfikatory pól danych filtrowania przełącznika wirtualnego obejmują:
- FWPS_FIELDS_EGRESS_VSWITCH_ETHERNET
- FWPS_FIELDS_EGRESS_VSWITCH_TRANSPORT_V4
- FWPS_FIELDS_EGRESS_VSWITCH_TRANSPORT_V6
- FWPS_FIELDS_INGRESS_VSWITCH_ETHERNET
- FWPS_FIELDS_INGRESS_VSWITCH_TRANSPORT_V4
- FWPS_FIELDS_INGRESS_VSWITCH_TRANSPORT_V6
Wskazówki dla autorów powiadomień dotyczących wirtualnych przełączników WFP
Ruch portu 0
W przypadku wywołań przełącznika wirtualnego WFP ruch z portu 0 (domyślny identyfikator portu) jest zaufany i nie powinien być filtrowany. Wynika to z faktu, że ruch przez port 0 pochodzi z innych rozszerzeń w stosie sterowników i dlatego jest traktowany przez ścieżkę danych jako uprzywilejowany i zaufany. Rozszerzenia przełącznika wirtualnego będą oszczędnie korzystać z portu 0 w sytuacjach takich jak inicjowanie pakietu kontrolnego, które nie powinny być filtrowane ani odrzucane przez jakiekolwiek podstawowe rozszerzenia. Aby uzyskać więcej informacji na temat modyfikacji portu źródłowego rozszerzalnego przełącznika Hyper-V, zobacz Modyfikowanie danych portu źródłowego rozszerzalnego przełącznika pakietu.
Reguły dopasowywania objaśnienie
Podczas definiowania reguły dopasowania do filtrowania wywołania przełączników wirtualnych nie powinny używać adresu MAC jako podstawy porównania. Adresy MAC mogą ulec zmianie w czasie wykonywania, a niektóre porty mogą generować ruch z wielu adresów MAC. Zamiast tego, objaśnienia powinny używać bardziej trwałej reguły dopasowania, takiej jak identyfikator karty sieciowej (NIC ID), która pozostaje niezmienna.
Wirtualizacja I/O (IOV) i współistnienie WFP
Nie można włączyć funkcji WFP na przełączniku IOV i jest blokowany przez system operacyjny, jeśli zostanie podjęta próba jej włączenia.
Włączanie lub wyłączanie programu WFP
Instalatory wywołań przełącznika wirtualnego WFP nie powinny modyfikować stanu włączenia rozszerzenia WFP; oznacza to, że nie powinny włączać ani wyłączać WFP.