Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W tym temacie opisano wytyczne, które muszą być przestrzegane przez rozszerzenia przełącznika Hyper-V do zarządzania pakietami uzyskanymi na rozciągliwej ścieżce danych przełącznika.
Uwaga W interfejsie rozszerzalnego przełącznika sterowniki filtrów NDIS są znane jako rozszerzenia przełącznika rozszerzalnego , a stos sterowników jest znany jako rozszerzalny stos sterowników przełącznika. Aby uzyskać więcej informacji na temat rozszerzeń, zobacz Hyper-V Rozszerzalne rozszerzenia przełącznika.
Pl-PL: Uwaga Zakłada się, że znasz informacje i diagramy w rozdziale Omówienie rozszerzalnego przełącznika Hyper-V oraz w sekcji Funkcja przekazywania hybrydowego.
Rozszerzenia muszą przestrzegać tych wytycznych dotyczących zarządzania pakietami w rozszerzonej ścieżce danych przełącznika:
Rozszerzenia, które generują pakiety, muszą wywoływać NdisFSendNetBufferLists, aby zainicjować żądanie wysyłania na ścieżce danych przychodzących. Należy to zrobić w ten sposób, aby umożliwić prawidłowe przekazywanie pakietu za pośrednictwem rozszerzalnego przełącznika.
Rozszerzenie przechwytywania może monitorować pakiety na rozszerzonej ścieżce danych przychodzących i wychodzących przełącznika. Jednak ten typ rozszerzenia musi zawsze przekazywać pakiety i nie może usuwać pakietów. Ponadto rozszerzenie przechwytywania nie może modyfikować danych pakietu przed przekazaniem pakietu.
Na rozszerzonej ścieżce danych wejścia przełącznika filtrowanie i przekazywanie rozszerzeń może wykonywać następujące czynności:
Rozszerzenia filtrowania mogą filtrować ruch sieciowy i wymuszać tylko niestandardowe zasady dotyczące portu lub przełącznika w celu dostarczania pakietów przez rozszerzalny przełącznik. Gdy rozszerzenie filtruje pakiety w ścieżce danych przychodzących, może stosować reguły filtrowania tylko na podstawie portu źródłowego i połączenia karty sieciowej, z którego pochodzi pakiet. Te informacje są przechowywane w danych OOB struktury NET_BUFFER_LIST pakietu i można je uzyskać za pomocą makra NET_BUFFER_LIST_SWITCH_FORWARDING_DETAIL.
Uwaga Pakiety uzyskane na ścieżce danych ruchu przychodzącego nie zawierają portów docelowych. Filtrowanie pakietów na podstawie portów docelowych można wykonywać tylko na pakietach uzyskanych na ścieżce danych ruchu wychodzącego.
Rozszerzenia przekazujące mogą filtrować ruch pakietowy i egzekwować zarówno niestandardowe, jak i standardowe zasady dotyczące portów lub przełączników, służąc do dostarczania pakietów przez rozbudowywalny przełącznik. Gdy rozszerzenie przekazujące filtruje pakiety w ścieżce danych przychodzących, stosuje reguły filtrowania na podstawie portu źródłowego, jak również portów docelowych, które przypisuje pakietowi.
Na rozszerzonej ścieżce danych wychodzących przełącznika rozszerzenia filtrowania i przekazywania mogą wykonywać następujące czynności:
Rozszerzenia filtrowania mogą filtrować ruch pakietów i wymuszać tylko niestandardowe zasady portu lub przełącznika na potrzeby dostarczania pakietów za pośrednictwem rozszerzalnego przełącznika. Gdy rozszerzenie filtrowania filtruje pakiety w ścieżce danych ruchu wychodzącego, może stosować reguły filtrowania tylko na podstawie portów docelowych dla pakietu.
Dane portów docelowych są przechowywane w danych OOB struktury NET_BUFFER_LIST pakietu. Rozszerzenia uzyskują te informacje, wywołując funkcję GetNetBufferListDestinations.
Rozszerzenia przekazujące mogą filtrować ruch pakietów i wymuszać niestandardowe i standardowe zasady portów lub przełączników na potrzeby dostarczania pakietów za pośrednictwem rozszerzalnego przełącznika. Gdy rozszerzenie przekazujące filtruje pakiety w ścieżce danych ruchu wychodzącego, może stosować reguły filtrowania na podstawie portów źródłowych lub docelowych dla pakietu.
Na podstawie zasad wymuszanych na pakiecie rozszerzenie filtrowania lub przesyłania dalej może wykluczyć dostarczanie pakietu do co najmniej jednego miejsca docelowego. Aby uzyskać więcej informacji na temat tej procedury, zobacz Wykluczanie dostarczania pakietów do rozszerzalnych portów docelowych przełącznika.
Na podstawie zasad wymuszanych na pakiecie, rozszerzenie do przesyłania może wykluczyć dostarczanie pakietu do co najmniej jednego miejsca docelowego. Więcej informacji znajdziesz w temacie Hybrid Forwarding.
Na rozszerzonej ścieżce danych wychodzących przełącznika filtrowanie i przekazywanie rozszerzeń nie może wykonywać następujących czynności:
Zmodyfikuj dane pakietu przed przekazaniem pakietu na ścieżce danych wychodzących.
Jeśli rozszerzenie filtrowania musi zmodyfikować dane w pakiecie, musi najpierw sklonować pakiet bez zachowania miejsc docelowych portów. Następnie rozszerzenie musi wstrzyknąć zmodyfikowany pakiet do ścieżki danych przychodzących. Dzięki temu podstawowe rozszerzenia mogą wymuszać zasady na zmodyfikowanym pakiecie, a rozszerzenie przekazywania może dodawać porty docelowe.
Jeśli rozszerzenie przekazujące musi zmodyfikować dane w pakiecie, musi najpierw sklonować pakiet przed przypisaniem miejsc docelowych portów. Po zmodyfikowaniu pakietu i przypisaniu miejsc docelowych portów rozszerzenie musi wstrzyknąć zmodyfikowany pakiet do ścieżki danych ruchu przychodzącego.
Aby uzyskać więcej informacji, zobacz Klonowanie ruchu pakietów.
Uwaga Jeśli rozszerzenie sklonuje pakiet uzyskany na ścieżce danych ruchu wychodzącego, może wstrzyknąć nowy pakiet do ścieżki danych ruchu wychodzącego tylko wtedy, gdy nie zmienił danych pakietu i zachował oryginalne dane portu docelowego.
Dodaj porty docelowe do pakietu przed przekazaniem pakietu.
Uwaga: rozszerzenia przekazywania pozwalają dodawać porty docelowe do pakietów uzyskanych na ścieżce danych wejściowych.
Wstrzyknij nowe lub sklonowane pakiety danych do ścieżki danych wychodzących.
W standardowej ścieżce danych NDIS niezrozszerzalne dane OOB przełącznika często mają różne formaty w zależności od tego, czy pakiet jest oznaczony jako wysyłany czy odbierany. Na przykład dane NDIS_IPSEC_OFFLOAD_V2_HEADER_NET_BUFFER_LIST_INFO OOB są połączeniem struktur specyficznych dla wysyłania i odbierania.
W rozszerzalnej ścieżce danych przełącznika wszystkie pakiety przechodzą przez stos sterowników rozszerzeń w miarę wysyłania i odbierania. W związku z tym dane OOB przełącznika nie rozszerzalnego w strukturze NET_BUFFER_LIST pakietu będą miały format wysyłania lub odbierania przez cały czas przepływu przez stos sterowników.
Format tych danych OOB zależy od źródłowego rozszerzalnego portu przełącznika, z którego pakiet dotarł do rozszerzalnego przełącznika. Jeśli port źródłowy jest połączony z zewnętrzną kartą sieciową, dane OOB przełącznika nie rozszerzalnego będą mieć format odbioru. W przypadku innych portów te dane OOB będą mieć format wysyłania.
Uwaga Jeśli rozszerzenie sklonuje strukturę NET_BUFFER_LIST pakietu, należy wziąć pod uwagę nietensyfikowalne dane OOB przełącznika, jeśli dodaje lub modyfikuje dane OOB. Rozszerzenie musi wywołać CopyNetBufferListInfo, aby skopiować dane OOB powiązane z rozszerzalną ścieżką danych przełącznika z pakietu źródłowego do pakietu sklonowanego. Ta funkcja będzie utrzymywać format wysyłania lub odbierania OOB podczas kopiowania danych do sklonowanego pakietu.
Jeśli rozszerzenie odrzuca pakiet ze ścieżki danych przychodzących lub wychodzących, musi wywołać ReportFilteredNetBufferLists. Po wywołaniu tej funkcji rozszerzalny interfejs przełącznika zwiększa liczniki i rejestruje zdarzenia dla porzuconych lub wykluczonych pakietów.