6de99301

Протокол


NFS использует RPC (Remote Procedure Call) для управления диалогами между клиентами и серверами и XDR (eXternal Data Representation) для обмена данными,связанными с протоколом (но не для данных пользователя !)

Что касается нижних уровней протокола, то в принципе NFS можно надстроить над TCP. Однако, все текущие версии из соображений эффективности используют UDP.

NFS - это протокол без сохранения состояния : сервер не отслеживает действия клиента. Если сервер останавливается, клиент продолжает посылать запросы до тех пор, пока сервер не будет перезапущен (речь идет о текущей возможности, сервер может остановиться и после некоторой задержки). Это позволяет очень просто перезапустить сервер NFS. С другой стороны, при этом, сервер должен обновлять файлы после каждой операции записи, чтобы свести к минимуму риск потери данных. При этом производительность сильно падает для операций записи, в отличие от операций чтения,использующих кэш. Кроме того, сервер, не сохраняющий состояние, не позволяет полностью поддерживать семантику UNIX. NFS не управляет специ- альными файлами и не способен блокировать файлы и части файлов.

1. Клиент
2. Обращение к системе
3. Интерфейс VFS
4. Система локальныхфайлов UNIX
4. Клиент NFS
5. RPC и XDR
6. Сервер
7. NFS сервер
8. Сеть
9. Данные


RFS разрабатывался так, чтобы быть независимым от транспортного протокола, при условии, что транспорт происходит в режиме коммутации пакетов (например, TCP). Внутри RFS использует механизм STREAMS. RFS использует протокол с сохранением состояния : сервер запоминает то,что сделал клиент. Благодаря этой возможности RFS полностью поддерживает семантику файловой системы UNIX и в частности возможность управления периферийными устройствами, а также, множественным доступом к файлам и записям (замки на фай- лах и записях). В файле (/usr/nserve/fmaster) сохраняется имя первичного и вторичного серверов имен каждого сервера и каждого клиента. Это позволяет избежать механизма "широковещания" Ethernet.

Сократить пересылку информации в сети позволяют механизмы кэширования.

7.2. - Внутренние механизмы RFS.
1 - клиент
2 - Обращение к системе
3 - FFS (File System Switch - Переключатель файловой системы)
4 - Локальная файловая система UNIX
5 - Клиент RFS
6 - Модули STREAMS
7 - Сервер
8 - сервер RFS
9 - периферийное устройство
10 - Сеть
11 - Данные



Содержание раздела