NFS была разработана Sun Microsystems еще в 1984 году и произвела настоящую революцию в индустрии хранения данных, позволяя файловым системам объединяться между собой, предоставляя единый вид для каждого файла в окружении NFS. В далеком 1984 году, высокоскоростные магистральные сети основывались на 10 BaseT Ethernet, а размеры дисков измерялись мегабайтами, а не гигабайтами. NFS соответствовал условиям своего времени и был быстро принят индустрией в качестве стандарта.
С тех пор NFS несколько раз обновлялся. Некоторые обновления связаны с улучшением производительности, но большинство касалось исправлений в области безопасности и взаимодействия с другими стандартами UNIX. Многие из нас знакомы с NFSv1, v2, v3, v4 и все жалуются на производительность, так как сети стали быстрее, но NFS не поспевает за прогрессом.
С момента появления NFS, скорость сетей возросла с 10 BaseT до 10 GbE, т.е. на три порядка, а скорость дисков с 3 Мб/с до 400 Мб/с, т.е. более чем в 133 раза. В то же время, в NFS изменился размер пакета с 4 Кб до 64 Кб. Больший размер может создавать дополнительные проблемы для плохих сетей, но дает некоторый выигрыш при перемещении больших объемов данных через скоростные сети. Итак, хорошая новость в том, что будущее NFS почти наступило с появлением NFSv4.1.
Разберемся что такое NFSv4.1 и почему его часто называют pNFS. pNFS (Parallel NFS) это часть протокола NFSv4.1, предоставляющая возможность высокоскоростного обмена данными между машинами сети. Вот иллюстрация того, как pNFS работает, взятая с официального сайта проекта pNFS.com.
Самое интересное, что IEFT (Internet Engineering Task Force) будет поддерживать протокол T10 OSD как часть NFSv4.1. Это означает, что вы сможете передавать данные с NFS-сервера блоками, объектами T10 OSD или файлами. Что еще важно, данные и метаданные передаются раздельно, а для блочных устройств хранения чтение происходит напрямую через сеть с использованием DMA. Производительность такого метода радикально отличается от того, что предлагает NFSv4. Вы не заметите прирост производительности, если используете 100 BaseT или даже 1 Гб Ethernet. Другое дело, если вы используете 10 Гб Ethernet или, скажем, DDR (double data rate) IB (InfiniBand) или что-то еще более быстрое.
pNFS уже заинтересовались такие компании, как EMC, IBM, NetApp, Sun и множество других. Ну и, конечно, Linux-сообщество тоже не отстает. В Интернете даже появились слухи, что Microsoft планирует добавить поддержку NFSv4.1 в будущие версии Windows.
Чем pNFS не является. Вопреки распространенному заблуждению, NFS — это протокол, а не файловая система. Даже не смотря на то, что название указывает на это. NFS просто предоставляет общий интерфейс к файловой системе. Это означает, что ограничения накладываются той файловой системой, которая лежит в основе. Например, если Microsoft портирует NFSv4.1 в будущую версию Windows, а вы подключите свою камеру через 10 гигабитный интерфейс, то это не означает, что ваш старый жесткий диск с файловой системой FAT32 выдержит поток в 1 Гб/с.
|