Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Usługa Azure NetApp Files obsługuje szyfrowanie klienta NFS w trybach kerberos (krb5, krb5i i krb5p) przy użyciu szyfrowania AES-256. W tym artykule opisano wpływ protokołu Kerberos na wydajność woluminów NFSv4.1.
Porównania wydajności, do których odwołuje się ten artykuł, są wykonywane względem parametru sec=sys zabezpieczeń, testowania na pojedynczym woluminie przy użyciu jednego klienta.
Dostępne opcje zabezpieczeń
Dostępne obecnie opcje zabezpieczeń dla woluminów NFSv4.1 są następujące:
- sec=sys używa lokalnych identyfikatorów UID i GID systemu UNIX przy użyciu AUTH_SYS do uwierzytelniania operacji NFS.
- sec=krb5 używa protokołu Kerberos V5 zamiast lokalnych identyfikatorów UID systemu UNIX i identyfikatorów GID do uwierzytelniania użytkowników.
- sec=krb5i używa protokołu Kerberos V5 do uwierzytelniania użytkownika i przeprowadza sprawdzanie integralności operacji NFS przy użyciu bezpiecznych sum kontrolnych, aby zapobiec manipulowaniu danymi.
- sec=krb5p używa protokołu Kerberos V5 do uwierzytelniania i sprawdzania integralności użytkowników. Szyfruje ruch NFS, aby zapobiec podsłuchiwaniu ruchu. Ta opcja jest najbezpieczniejszym ustawieniem, ale obejmuje również największe obciążenie związane z wydajnością.
Przetestowane wektory wydajności
W tej sekcji opisano wpływ wydajności po stronie pojedynczego klienta na różne sec=* opcje.
- Wpływ na wydajność został przetestowany na dwóch poziomach: niska współbieżność (małe obciążenie) i wysoka współbieżność (górne limity operacji we/wy i przepływności).
- Przetestowano trzy typy obciążeń:
- Mała operacja losowego odczytu/zapisu (przy użyciu FIO)
- duża operacja sekwencyjnego odczytu/zapisu (przy użyciu FIO)
- Duże obciążenie metadanych generowane przez aplikacje, takie jak git
Oczekiwany wpływ na wydajność
Istnieją dwa obszary koncentracji uwagi: lekkie obciążenie i górny limit. Na poniższych listach opisano wpływ ustawień zabezpieczeń na wydajność dla poszczególnych ustawień zabezpieczeń i scenariuszy.
Zakres testowania
- Wszystkie porównania są wykonywane względem parametru
sec=syszabezpieczeń. - Test został wykonany na jednym woluminie przy użyciu jednego klienta.
Wpływ krb5 na wydajność:
- Średnia wartość I/OPS zmniejszyła się o 53%
- Średnia przepływność zmniejszyła się o 53%
- Średnie opóźnienie wzrosło o 0,2 ms
Wpływ krb5i na wydajność:
- Średnia liczba I/OPS zmniejszyła się o 55%
- Średnia przepływność zmniejszyła się o 55%
- Średnie opóźnienie wzrosło o 0,6 ms
Wpływ krb5p na wydajność:
- Średnie operacje we/wy na sekundę (I/OPS) zmniejszyły się o 77%
- Średnia przepływność spadła o 77%
- Średnie opóźnienie wzrosło o 1,6 ms
Aspekty dotyczące wydajności z nconnect
Nie zaleca się używania opcji montowania nconnect i sec=krb5* razem. Użycie tych opcji razem może spowodować obniżenie wydajności.
Interfejs GSS-API (Generic Security Standard Application Programming Interface) umożliwia aplikacjom ochronę danych wysyłanych do aplikacji równorzędnych. Te dane mogą być wysyłane z klienta na jednej maszynie do serwera na innej maszynie.
Gdy nconnect jest używany w systemie Linux, kontekst zabezpieczeń GSS jest współużytkowany między wszystkimi nconnect połączeniami z określonym serwerem. TCP to niezawodny transport, który umożliwia dostarczanie pakietów w nieodpowiedniej kolejności w celu radzenia sobie z takimi pakietami w strumieniu GSS przy użyciu przesuwanego okna numerów sekwencji. Gdy pakiety spoza okna sekwencji są odbierane, kontekst zabezpieczeń zostaje odrzucony, a nowy kontekst zabezpieczeń jest wynegocjowany. Wszystkie komunikaty wysyłane w kontekście teraz odrzuconym nie są już prawidłowe, co wymaga ponownego wysłania komunikatów. Większa liczba pakietów w konfiguracji nconnect powoduje częste występowanie pakietów spoza okna, wyzwalając opisane zachowanie. Nie można określić określonych wartości procentowych degradacji przy użyciu tego zachowania.