Влияние Kerberos на Azure NetApp Files томов NFSv4.1

Azure NetApp Files поддерживает шифрование клиента NFS в режимах Kerberos (krb5, krb5i и krb5p) с шифрованием AES-256. В этой статье описывается влияние Kerberos на тома NFSv4.1. Сравнения производительности, указанные в этой статье, выполняются с параметром sec=sys безопасности, тестированием на одном томе с одним клиентом.

Доступные параметры безопасности

Доступные в настоящее время параметры безопасности для томов NFSv4.1:

  • sec=sys использует локальные идентификаторы и ИДЕНТИФИКАТОРы UNIX с помощью AUTH_SYS для проверки подлинности операций NFS.
  • sec=krb5 использует Kerberos V5 вместо локальных идентификаторов ПОЛЬЗОВАТЕЛЬСКОго интерфейса UNIX и GID для проверки подлинности пользователей.
  • sec=krb5i использует Kerberos V5 для проверки подлинности пользователей и выполняет проверку целостности операций NFS с помощью безопасных контрольных сумм для предотвращения незаконного изменения данных.
  • sec=krb5p использует Kerberos V5 для проверки подлинности и целостности пользователей. Он шифрует трафик NFS, чтобы предотвратить sniffing трафика. Этот параметр является наиболее безопасным параметром, но он также включает в себя наибольшие затраты на производительность.

Тестируемые векторы производительности

В этом разделе описано влияние различных вариантов на производительность на стороне sec=* одного клиента.

  • Влияние на производительность было протестировано на двух уровнях: низкий параллелизм (низкая нагрузка) и высокий параллелизм (верхние пределы ввода-вывода и пропускной способности).
  • Были протестированы три типа рабочих нагрузок:
    • Небольшая операция случайного чтения и записи (с помощью FIO)
    • Последовательная операция чтения и записи больших операций (с помощью FIO)
    • Рабочая нагрузка больших метаданных, созданная приложениями, такими как Git

Ожидаемое влияние на производительность

Есть две области фокуса: светлая нагрузка и верхний предел. В следующих списках описываются параметры безопасности, влияющие на производительность, с помощью параметров безопасности и сценариев.

Область тестирования

  • Все сравнения выполняются с параметром sec=sys безопасности.
  • Тест был выполнен на одном томе с помощью одного клиента.

Влияние krb5 на производительность:

  • Среднее число операций ввода-вывода в секунду сократилось на 53 %
  • Средняя пропускная способность снизилась на 53 %
  • Средняя задержка увеличена на 3,2 мс

Влияние krb5i на производительность:

  • Среднее число операций ввода-вывода в секунду сократилось на 55 %
  • Средняя пропускная способность снизилась на 55 %
  • Средняя задержка увеличена на 0,6 мс

Влияние krb5p на производительность:

  • Среднее число операций ввода-вывода в секунду сократилось на 77 %
  • Средняя пропускная способность снизилась на 77 %
  • Средняя задержка увеличена на 1,6 мс

Рекомендации по производительности с помощью nconnect

Не рекомендуется использовать nconnect и sec=krb5* подключать параметры вместе. Снижение производительности наблюдалось при использовании двух вариантов в сочетании.

Универсальный программный интерфейс безопасности (GSS-API) предоставляет приложениям способ защиты данных, отправляемых одноранговым приложениям. Эти данные могут быть отправлены с клиента на одном компьютере на сервер на другом компьютере. 

При nconnect использовании в Linux контекст безопасности GSS используется для всех nconnect подключений к конкретному серверу. TCP — это надежный транспорт, который поддерживает доставку пакетов вне порядка для обработки пакетов в потоке GSS с помощью скользящего окна порядковых номеров. При получении пакетов, не входящих в окно последовательности, контекст безопасности удаляется, а новый контекст безопасности согласовывается. Все сообщения, отправляемые в контексте, отброшенном сейчас, больше не являются допустимыми, поэтому требуется, чтобы сообщения отправлялись снова. Более большое количество пакетов в nconnect программе установки приводит к частому выходу пакетов из окна, что приводит к возникновению описанного поведения. С этим поведением нельзя указать конкретные проценты снижения производительности.

Дальнейшие действия