1. Концепции распределенной обработки в сетевых ОС. Типовые функциональные части приложений. Типовые схемы распределенной обработки.
2. Сетевые файловые системы и их компоненты. Протоколы сетевых файловых систем. Проблемы организации функционирования
1) Значительная часть приложений, работающих в компьютерных сетях, являются сетевыми, но, конечно, не все. Существуют типовые модели распределенных приложений. Например, модель, в которой приложение разбивается на шесть функциональных частей:
1. Средства представления данных на экране (графический пользовательский интерфейс)
2. Логика представления данных на экране – описание правил и возможностей сценариев взаимодействия пользователя с приложением
3. Логика данных – операции с данными, хранящимися в базе данных, которые нужно выполнить для реализации прикладной логики
4. Прикладная логика – набор правил для принятия решения, вычислительные процедуры и операции
5. Внутренние операции базы данных – действия СУБД в ответ на запросы логики данных (например, поиск записей по определенным признакам)
|
|
6. Файловые операции – стандартные операции над файлами и файловой системой (обычно являются функциями операционной системы)
На основе этих частей можно построить несколько схем распределения приложения частей между компьютерами сети:
Распределение приложения между большим числом компьютеров может повысить качество его выполнения (скорость, кол-во одновременно обслуживаемых пользователей), однако при этом усложняется в разы организация самого приложения. Поэтому на практике распределение идет между на 2-3 части.
Двухзвенная схема:
1. Обработка на сервере
2. Обработка у клиента
3. Обработка при сотрудничестве
1. Аналогична использованию мейнфреймов(as сервер) и терминалов (as компьютеры локальной сети) – вся обработка на сервере
Минус: недостаточная масштабируемость, отсутствие отказоустойчивости, ограничение кол-ва клиентов
Плюс: простота организации программы,, простота обновления приложения (+ существует большое число нераспределенных приложений)
2. На клиентской машине выполняются все части приложения за исключением файловых операций (файловый сервер)
Плюс: хорошая масштабируемость
Минус: рост сетевой нагрузки, необходимость обновления приложения на всех клиентских компьютерах
2) Сетевые файловые системы(ФС), как и в централизованных системах, отвечают за хранение программ и данных и предоставление доступа к ним. Могут поддерживать одним и несколькими компьютерами. Файловые серверы обычно организованы иерархически: корневой каталог и каталоги более низких уровней.
|
|
Распределенная ФС – это сетевая служба, включающая программы-серверы и программы-клиенты, взаимодействующие между собой по определенному протоколу.
Функционально файловая служба в РФС включает:
• собственно файловую службу (работа с отдельным файлом)
• службу каталогов файловой системы (управление каталогами)
Элементы сетевой файловой системы:
1. Локальные файловые системы
2. Интерфейсы локальной файловой системы
3. Серверы сетевой файловой системы
4. Клиенты сетевой файловой системы (программы, работающие на компьютерах, подключенных к сети)
5. Интерфейс сетевой файловой системы
6. Протокол клиент-сервер сетевой файловой системы
Клиенты сетевой ФС работают на компьютерах, подключенных к сети, они отправляют запросы на доступ к файлам, хранящимся на удаленных компьютерах, серверу сетевой ФС.
Сервер передает запрос локальной файловой системе, и все обратно раскручивается.
Клиент и сервер сетевой файловой системы взаимодействуют друг с другом по сети по определенному протоколу. В случае совпадения интерфейсов локальной и сетевой файловых систем этот протокол будет достаточно простым (ретрансляция серверу запросов, принятых клиентом от приложения, например, с использованием механизма RPC).
NFS (Network File System)- это протокол, разработанный Sun Microsystems для разделения ресурсов (файлов и каталогов) локальной сети. NFS-клиент ``монтирует'' файловую систему, ``экспортируемую'' NFS-сервером. Смонтированная таким образом файловая система представляется на клиентском компьютере как часть локальной файловой системы. Протокол NFS предоставляет, в частности, возможность смонтировать корневую файловую систему в процессе загрузки. Таким образом, можно обеспечить работу бездисковых рабочих станций.
В ОС Windows основным протоколом является SMB (Server Message Block) или CIFS (Common Internet File System).