Назад | Перейти на главную страницу

NFS v2 по сравнению с v3

У меня проблемы с двумя системами (клиентом Solaris и сервером Linux), использующими NFS v3 для монтирования домашних каталогов. (NFS v4 просто не работает вообще, поскольку то, что мне сказал другой системный администратор, это «известная проблема».) NFS v2, похоже, работает правильно.

У меня такой вопрос: каковы компромиссы между использованием NFS v2 и NFS v3? Мне нужно принять решение, продолжать ли попытки отладить эту проблему или просто решаю жить с NFS v2 для этого одного клиента.

Я знаю, что в версии 2 есть ограничение на размер файла, хотя я видел противоречивую информацию - это ограничение 2 ГБ или 4 ГБ? В версии 2 также наблюдается снижение производительности; Можно ли количественно оценить ограничения скорости с помощью v2 в целом, или это слишком сильно зависит от конкретных задействованных систем и сетей? (Как бы то ни было, между системами у меня есть гигабитный Ethernet.) Какие еще есть компромиссы между ними? Есть ли какие-либо проблемы безопасности, о которых мне следует знать?

В соответствии с википедия NFSv2 использует 32-битные значения размера файла, что ограничивает его файлами 4 ГБ, но, по-видимому, распространенной ошибкой является создание подписанных значений, что ограничивает его размером 2 ГБ. NFSv3 также имеет асинхронные операции и значительно оптимизированные операции, поэтому нужно выполнять меньше операций. Это действительно оказывает большое влияние на производительность даже в локальной сети, поскольку задержки в сети полностью отличаются от задержек на локальных машинах. NFSv2 следует использовать только в том случае, если что-то не поддерживает NFSv3. Попытайтесь выяснить, почему не работает NFSv4. Может, ты сможешь это исправить.

В дополнение к существующему ответу.

NFSv3 имеет операцию READDIRPLUS, которая позволяет сразу получить список каталогов с атрибутами файлов - значительное улучшение производительности при листинге каталогов. Кроме того, V3 имеет слабую согласованность кеша, что делает кеш клиента счастливым и позволяет клиенту не запрашивать слишком много информации. Плюс ПТС как транспорт. С UDP у вас могут быть потери данных из-за большого размера буфера ввода-вывода для чтения и записи. Вызов ACCESS позволяет клиенту повторно использовать кэшированные данные, если другой пользователь хочет получить доступ к тому же файлу.