Dopad protokolu Kerberos na svazky Azure NetApp Files NFSv4.1

Azure NetApp Files podporuje šifrování klienta NFS v režimech Kerberos (krb5, krb5i a krb5p) s šifrováním AES-256. Tento článek popisuje dopad protokolu Kerberos na svazky NFSv4.1. Porovnání výkonu, na která odkazuje tento článek, se provádí s parametrem sec=sys zabezpečení a testováním na jednom svazku s jedním klientem.

Dostupné možnosti zabezpečení

Možnosti zabezpečení aktuálně dostupné pro svazky NFSv4.1 jsou následující:

  • sec=sys používá místní systém UNIX identifikátory UID a IDENTIFIKÁTORy GID pomocí AUTH_SYS k ověřování operací NFS.
  • sec=krb5 používá k ověřování uživatelů protokol Kerberos V5 místo místních systém UNIX identifikátorů UID a IDENTIFIKÁTORů GID.
  • sec=krb5i používá protokol Kerberos V5 k ověřování uživatelů a provádí kontrolu integrity operací NFS pomocí zabezpečených kontrolních součtů, aby se zabránilo manipulaci s daty.
  • sec=krb5p používá protokol Kerberos V5 k ověřování a kontrole integrity uživatelů. Šifruje provoz NFS, aby se zabránilo zašifrování provozu. Tato možnost je nejbezpečnějším nastavením, ale zahrnuje také největší režii na výkon.

Testované vektory výkonu

Tato část popisuje dopad sec=* jednotlivých možností na výkon na straně klienta.

  • Dopad na výkon byl testován na dvou úrovních: nízká souběžnost (nízká zátěž) a vysoká souběžnost (horní limity vstupně-výstupních operací a propustnosti).
  • Byly testovány tři typy úloh:
    • Náhodné čtení a zápis malé operace (pomocí FIO)
    • Velké operace sekvenční čtení a zápis (pomocí FIO)
    • Úlohy náročné na metadata generované aplikacemi, jako je Git

Očekávaný dopad na výkon

Existují dvě oblasti zaměření: lehké zatížení a horní limit. Následující seznamy popisují nastavení zabezpečení dopadu na výkon nastavením zabezpečení a scénářem podle scénáře.

Rozsah testování

  • Všechna porovnání se provádějí s parametrem sec=sys zabezpečení.
  • Test byl proveden na jednom svazku pomocí jednoho klienta.

Dopad výkonu krb5:

  • Průměrný počet vstupně-výstupních operací za sekundu se snížil o 53 %
  • Průměrná propustnost se snížila o 53 %
  • Průměrná latence se zvýšila o 0,2 ms

Dopad výkonu krb5i:

  • Průměrný počet vstupně-výstupních operací za sekundu se snížil o 55 %
  • Průměrná propustnost se snížila o 55 %
  • Průměrná latence se zvýšila o 0,6 ms

Dopad výkonu krb5p:

  • Průměrný počet vstupně-výstupních operací za sekundu se snížil o 77 %
  • Průměrná propustnost se snížila o 77 %
  • Průměrná latence se zvýšila o 1,6 ms

Aspekty výkonu s využitím nconnect

Nedoporučuje se používat nconnect a sec=krb5* připojovat možnosti společně. Při použití těchto dvou možností v kombinaci bylo pozorováno snížení výkonu.

Rozhraní GSS-API (Generic Security Standard Application Programming Interface) poskytuje aplikacím způsob ochrany dat odesílaných do partnerských aplikací. Tato data mohou být odeslána z klienta na jednom počítači na server na jiném počítači. 

Při nconnect použití v Linuxu se kontext zabezpečení GSS sdílí mezi všemi připojeními k určitému nconnect serveru. TCP je spolehlivý přenos, který podporuje doručování paketů mimo pořadí, aby bylo možné zpracovávat pakety mimo pořadí v datovém proudu GSS pomocí posuvného okna s pořadovými čísly. Při přijetí paketů, které nejsou v okně sekvence, se kontext zabezpečení zahodí a vyjedná se nový kontext zabezpečení. Všechny zprávy odeslané v nyní zahozeném kontextu už nejsou platné, takže je nutné je odeslat znovu. Větší počet paketů v nconnect nastavení způsobuje časté pakety mimo okno, které aktivují popsané chování. U tohoto chování nelze uvést žádné konkrétní procento snížení výkonu.

Další kroky