Udostępnij przez


Zarządzanie zasadami portów

Hyper-V Rozszerzenia filtrowania i przekazywania przełącznika można konfigurować przy użyciu standardowych i niestandardowych właściwości portów. Gdy już zostaną skonfigurowane, te rozszerzenia wymuszają zasady podczas filtrowania pakietów uzyskanych na ścieżce danych wejściowych rozszerzalnego przełącznika. Aby uzyskać więcej informacji na temat tych zasad, zobacz Zasady portów.

Interfejs przełącznika rozszerzalnego Hyper-V używa następujących identyfikatorów obiektów (OID) do realizacji rozszerzeń filtrowania i przekazywania, uwzględniających właściwości standardowych i niestandardowych zasad portów.

OID_SWITCH_PORT_PROPERTY_ADD
To żądanie zestawu identyfikatorów OID jest wystawiane przez krawędź protokołu rozszerzalnego przełącznika w celu powiadamiania podstawowych rozszerzeń o dodawaniu właściwości w warstwie zarządzania WMI. Struktura InformationBuffer struktury NDIS_OID_REQUEST zawiera wskaźnik do struktury NDIS_SWITCH_PORT_PROPERTY_PARAMETERS.

Uwaga Właściwości portu niestandardowego są określane przez wartość wyliczenia NDIS_SWITCH_PORT_PROPERTY_TYPENdisSwitchPortPropertyTypeCustom. Właściwości portu standardowego są określane przez wartość wyliczenia NDIS_SWITCH_PORT_PROPERTY_TYPE NdisSwitchPortPropertyTypeSecurity, NdisSwitchPortPropertyTypeVlan i NdisSwitchPortPropertyTypeProfile.

OID_SWITCH_PORT_PROPERTY_UPDATE
To żądanie zestawu identyfikatorów OID jest wystawiane przez interfejs protokołu rozszerzalnego przełącznika, aby poinformować podstawowe rozszerzenia o aktualizacji właściwości na warstwie zarządzania WMI. Struktura InformationBuffer struktury NDIS_OID_REQUEST zawiera wskaźnik do struktury NDIS_SWITCH_PORT_PROPERTY_PARAMETERS.

OID_SWITCH_PORT_PROPERTY_DELETE
To żądanie zestawu identyfikatorów OID jest wystawiane przez krawędź protokołu rozszerzalnego przełącznika w celu informowania podstawowych rozszerzeń o usunięciu właściwości w warstwie zarządzania WMI. InformationBuffer struktury NDIS_OID_REQUEST zawiera wskaźnik do struktury NDIS_SWITCH_PORT_PROPERTY_DELETE_PARAMETERS.

OID_SWITCH_PORT_PROPERTY_ENUM
To żądanie metody OID jest wysyłane przez rozszerzenie, aby wysłać zapytanie do bazowej krawędzi miniportu przełącznika rozszerzalnego o aktualnie skonfigurowanych właściwości dla określonego portu na rozszerzalnym przełączniku. InformationBuffer struktury NDIS_OID_REQUEST zawiera wskaźnik do buforu. Ten bufor zawiera następujące dane:

Uwaga Rozszerzenie nie może inicjować żądań ustawienia OID OID_SWITCH_PORT_PROPERTY_ADD. OID_SWITCH_PORT_PROPERTY_UPDATE lub OID_SWITCH_PORT_PROPERTY_DELETE.

Rozszerzenie rozszerzalnego przełącznika musi postępować zgodnie z tymi wytycznymi, gdy obsługuje żądanie zestawu identyfikatorów OID OID_SWITCH_PORT_PROPERTY_ADD, OID_SWITCH_PORT_PROPERTY_UPDATE lub OID_SWITCH_PORT_PROPERTY_DELETE:

  • Rozszerzenie nie może modyfikować struktury NDIS_SWITCH_PORT_PROPERTY_PARAMETERS ani NDIS_SWITCH_PORT_PROPERTY_DELETE_PARAMETERS skojarzonej z żądaniem OID.

  • Rozszerzenie musi obsługiwać te żądania OID, jeśli rozszerzenie zarządza właściwością. W zależności od żądania OID rozszerzenie musi sprawdzić następujące członki struktury NDIS_SWITCH_PORT_PROPERTY_PARAMETERS lub NDIS_SWITCH_PORT_PROPERTY_DELETE_PARAMETERS w celu ustalenia, czy zarządza właściwością portu.

    • Członek PropertyType. Ten człon określa typ właściwości portu. Właściwości portu niestandardowego mają wartość składową PropertyTypeNdisSwitchPortPropertyTypeCustom. Właściwości portu standardowego mają inne wartości typu właściwości. Na przykład standardowe zasady dla portów VLAN mają właściwość typu o wartości NdisSwitchPortPropertyTypeVlan.

    • Członek PropertyId. Ten element określa własną wartość identyfikatora GUID dla niestandardowej właściwości portu. Ta wartość identyfikatora GUID jest tworzona przez niezależnego dostawcę oprogramowania (ISV), który definiuje również format niestandardowej właściwości przełącznika rozszerzalnego.

      Uwaga Rozszerzenie musi ignorować ten element dla standardowych zasad portów.

  • Rozszerzenie musi obsługiwać żądanie zestawu OID_SWITCH_PORT_PROPERTY_UPDATE, jeśli rozszerzenie zostało wcześniej konfigurowane z właściwością portu zgodną z następującymi elementami członkowskimi struktury NDIS_SWITCH_PROPERTY_PARAMETERS:

    • Członek PropertyType.

    • Członek PropertyId.

      Uwaga Rozszerzenie musi ignorować ten element dla standardowych polityk portów.

    • Element członek PropertyVersion. Ten element członkowski określa wersję właściwości portu, z którą aprowizowano rozszerzenie.

    • Składnik PropertyInstanceId. Ten członek określa instancję właściwości portu, z którą została wdrożona rozszerzenie.

  • Rozszerzenie filtrowania lub przekazywania może zawetować dodanie lub zaktualizowanie polityki portów, którą zarządza. Rozszerzenie robi to, kończąc żądanie OID ze statusem STATUS_DATA_NOT_ACCEPTED.

    Uwaga Przechwytywanie rozszerzeń nie może zawetować dodawania ani aktualizowania polityki portów. Zamiast tego musi skierować żądanie OID w dół ścieżki sterowania przełącznikiem rozszerzalnym.

  • Rozszerzenie przekazujące może odrzucić żądanie identyfikatora OID dla standardowych właściwości portów, które nie są obsługiwane, lub gdy właściwość powoduje konflikt z jego własną konfiguracją zasad. W takim przypadku rozszerzenie musi ukończyć żądanie OID i zwrócić odpowiedni kod stanu NDIS, aby zgłosić błąd.

  • Jeśli rozszerzenie pomyślnie obsłuży żądanie zestawu identyfikatorów OID dla standardowej zasady portu, nie powinno ukończyć żądania OID i musi przekazać je dalej w dół ścieżki sterowania rozszerzalnym przełącznikiem.

  • Jeśli rozszerzenie przechwytywania lub filtrowania pomyślnie obsługuje żądanie ustawienia identyfikatora OID dla niestandardowych zasad portów, nie może ukończyć żądania identyfikatora OID i musi przekazać je dalej wzdłuż ścieżki kontrolnej przełącznika rozszerzalnego.

    Jeśli rozszerzenie przekazujące pomyślnie obsługuje żądanie ustawienia OID dla niestandardowej zasady portu, musi ukończyć żądanie OID i zwrócić odpowiednią wartość NDIS_STATUS_Xxx.

  • Jeśli rozszerzenie nie ukończy żądania ustawienia OID, musi wywołać NdisFOidRequest, aby przekazać żądanie OID w dół stosu rozszerzalnego sterownika przełącznika. W tym przypadku rozszerzenia powinny monitorować status realizacji żądania OID, aby wykryć, czy podstawowe rozszerzenie nie zrealizowało tego żądania.