ТЕМА_5_БИ

advertisement
Операционные среды,
системы и оболочки
Тема 5. Распределенные
операционные системы и среды
Автор : доктор технических наук,
профессор Назаров С.В.
Операционные системы
1
5. Распределенные операционные системы и среды
5.1. Недостатки сосредоточенных и изолированных систем
5.2. Понятие компьютерной сети. Преимущества объединения
5.3. Терминология компьютерных сетей
5.4. Сетевые и распределенные операционные системы
5.5. Сетевые службы и сетевые сервисы
5.6. Одноранговые и серверные операционные системы
5.7. Служба каталогов сетевых серверных ОС
5.7.1. Понятие службы каталогов
5.7.2. Архитектура Active Directory
5.7.3. Контроллеры домена
5.7.4. Управление объектами Active Directory
Операционные системы
2
5.8. Концепции распределенной обработки в сетевых ОС
5.8.1. Модели распределенных приложений
5.8.2. Передача сообщений в распределенных системах
5.8.3. Вызов удаленных процедур
5.8.4. Сетевые файловые системы
Операционные системы
3
Литература:
Л1 стр. 39 – 52, 380 – 427;
Л2 стр. 651 – 669;
Л3 стр. 217 – 226.
Операционные системы
4
5.1. Недостатки сосредоточенных и изолированных систем
Мэйнфреймы как достижение технической мысли (60 – 80 гг.):
1) высокая производительность и точность вычислений; 2) универсальный
режим работы; 3) обслуживание больших коллективов пользователей; 4)
возможность удаленного доступа.
Недостатки: 1) большая стоимость; 2) опасность “универсального” краха
системы; 3)Необходимость высококвалифицированного обслуживающего
персонала большой численности
Система изолированных персональных компьютеров:
1) повышение отказоустойчивости; 2) распределенный вычислительный
потенциал у каждого пользователя, 3) высокое удобство индивидуальной
работы.
Недостатки: 1) проблема обмена информацией; 2) неудобства в
организации коллективной работы; 3) дополнительные затраты труда; 4)
высокая стоимость организации использования периферийных устройств.
Операционные системы
5
5.2. Понятие компьютерной сети. Преимущества объединения
Компьютерная сеть – это два или более компьютеров, связанных
коммуникационной системой и программным обеспечением, позволяющим
пользователям получать доступ к ресурсам этих компьютеров.
Преимущества объединения:
1. Совместное использование дорогостоящих устройств ввода-вывода
(цветные принтеры, плоттеры, цифровые камеры и т. п.
2. Совместное использование устройств хранения информации.
3. Совместное использование модемов и подключений к Интернет.
4. Совместное использование файлов данных и приложений.
5. Возможность организации электронной почты и аудио- и
видеоконференций.
6. Упрощение и удешевление технического обслуживания,
модернизации, замены и установки программного обеспечения.
Операционные системы
6
5.3. Терминология компьютерных сетей
1. Физическая топология сети
Операционные системы
7
2. Логическая топология сети определяет путь прохождения сигналов
от одного компьютера к другому. Логическая топология тесно связана с
физической, но не всегда ее повторяет.
3. Область действия сети: локальные сети, территориальные,
корпоративные (частные виртуальные сети), национальные, глобальные.
4. Компьютеры сети
Серверы – компьютеры, предоставляющие свои ресурсы (данные,
программное обеспечение, периферийное оборудование, услуги – печать,
электронная почта и др.) пользователям сети. В больших сетях серверы
специализируются, т.е. выполняют одну определенную функцию. Виды
серверов: файловые серверы, серверы печати, серверы приложений,
регистрационные серверы (контроллеры доменов), интернет-серверы
(WEB-серверы), почтовые серверы, терминальные серверы, серверы
удаленного доступа, прокси-серверы, факс-серверы, кластерные серверы
Операционные системы
8
5. Клиенты, рабочие станции, хосты, узлы
Клиенты сети – компьютеры и другие сетевые устройства (например,
принтеры), имеющие доступ к ресурсам сети, также программы, имеющие
доступ к программам сервера. Чаще всего клиент – компьютер пользователя
сети. Клиенты-компьютеры могут быть “тонкими” и “толстыми”
клиентами.
Рабочая станция:
1. Клиентский (пользовательский) компьютер, на котором установлена
клиентская операционная система.
2. Высокопроизводительный компьютер, интенсивно использующий
локальные и сетевые ресурсы.
Хост – компьютер или другое устройство сети, имеющее IP-адрес.
Узел – точка соединения в сети – компьютер или другое устройство,
предназначенное для распознавания и обработки запросов на передачу
информации другим узлам сети.
Операционные системы
9
6. Сетевая коммуникационная аппаратура
Простые соединительные устройства – разъемы для подключения
коаксиальных кабелей (BNC T- разъемы и цилиндрические), телефонных линий (RJ11), витой пары (RJ-45), разъемы волоконно-оптических кабелей, коммутационные
панели и пассивные концентраторы.
Сложные соединительные устройства – преобразователи (для соединения
витой пары с волоконно-оптическим кабелем), повторители (для соединения
сегментов сети), активные концентраторы (многопортовые повторители).
Устройства сегментации и создания подсетей:
мосты – компьютеры или специализированные устройства, объединяющие два
сегмента сети (фильтрация данных на основе MAC-адресов);
маршрутизаторы - компьютеры или специализированные устройства для соединения
отдельных сетей (на основе IP –адресов);
коммутаторы, работающие на различных уровнях модели OSI.
Операционные системы
10
Модель
МодельOSI
OSI(Open
(OpenSystem
SystemInterconnection)
Interconnection)
Операционные системы
11
Модель OSI (Open System Interconnection)
Модель OSI состоит из семи уровней, каждый из которых представляет собой определенный этап
процесса сетевой коммуникации. Каждый уровень выполняет определенную задачу процесса
коммуникации, а затем передает данные вверх или вниз на следующий уровень.
Прикладной уровень обеспечивает взаимодействие между пользовательским приложением
и сетью: FTP , Telnet , SMTP , HTTP (передача гипертекста) и др.
Уровень представления (сжатие данных, шифрование, трансляция протоколов). На этом уровне
работают шлюзы для соединения различных сетей и Редиректоры – программы, определяющая, чем
должен быть обработан запрос – локальным компьютером или устройством сети.
Сеансовый уровень – устанавливает и разрывает диалоги приложений разных компьютеров
сети в дуплексном или полудуплексном режиме по установленным правилам обмена,
обеспечивает безопасность и распознавание имен.
Транспортный уровень – обеспечение целостности и последовательности пакетов данных.
На этом уровне работает DNS, организуются порты и Сокеты приложений.
Сетевой уровень – маршрутизация пакетов. Устройства этого уровня – маршрутизаторы и
коммутаторы сетевого уровня.
Канальный уровень: MAC – управление доступом к сети (48-разрядный двоичный адрес сетевой карты)
и LLC – управление логическими связями (определяет логическую топологию сети). На этом уровне
работают мосты и коммутаторы уровня 2
Физический уровень –формирование аналоговых, цифровых, модулированных и
других сигналов, синхронная и асинхронная передача и др.
Операционные системы
12
Коммутаторы – устройства объединения подсетей (сетей) на
различных уровнях модели OSI:
1. Коммутатор второго уровня – коммутирующий концентратор –
передает пакет только на требуемый порт (к портам подключены
компьютеры).
2. Коммутатор второго уровня – сегментный коммутатор, к его портам
подключены сегменты сети.
3. Коммутатор третьего уровня (сетевого) является маршрутизатором
специального типа.
4. Коммутатор четвертого уровня – использует информацию,
содержащуюся в заголовках протоколов TCP и UDP c целью повышения
безопасности данных путем фильтрации списка контроля доступа.
Маршрутизаторы – устройства объединения подсетей
(сетей) с выбором оптимального маршрута передачи пакета
данных (используют IP и IPX-адресацию).
Операционные системы
13
5.4. Сетевые и распределенные операционные системы
Сетевая ОС предоставляет пользователю виртуальную вычислительную
систему, работать с которой проще, чем с реальной сетевой аппаратурой.
В то же время эта виртуальная система не полностью скрывает
распределенную природу своего реального прототипа.
Термин “сетевая операционная система” используется в двух значениях:
1. Совокупность взаимодействующих ОС всех компьютеров сети.
2. Операционная система отдельного компьютера, позволяющая ему работать в
сети.
В идеальном случае сетевая ОС должна предоставлять пользователю
сетевые ресурсы в виде ресурсов единой централизованной виртуальной
машины. В этом случае сетевая ОС является распределенной ОС.
Распределенная операционная система существует как единая ОС в
масштабах всей вычислительной системы.
Степень автономности каждого компьютера сети, работающего под
управлением сетевой ОС, значительно выше по сравнению с
компьютерами, работающими под управлением распределенной ОС.
Операционные системы
14
Сетевые операционные системы
МД
Принтер
МЛ
Средства управления
локальными ресурсами
Сетевые средства
Серверна
я часть
Клиентская
часть
Редиректор
Сетевая операционная система
Транспортные средства
DVD
(сетевые службы)
В сеть
Операционные системы
Сетевая служба: серверная
и клиентская части
15
5.5. Сетевые службы и сетевые сервисы
Совокупность серверной и клиентской частей ОС, предоставляющих
доступ к конкретному типу сетевого ресурса, называется сетевой
службой.
Сетевой сервис – это набор услуг, предоставляемых сетевой службой.
Сетевые службы ориентированы на пользователя и администратора
сети.
Наиболее важными для пользователей сети являются файловая
служба и служба печати. Спектр служб может включать: почтовую
службу, удаленный терминальный доступ, передачу файлов,
видеоконференции и др.
К службам, ориентированным на администратора относятся: служба
мониторинга сети, служба безопасности, резервного копирования,
архивирования и др.
Сетевые службы имеют клиент-серверную архитектуру.
Операционные системы
16
2
Операционная
система
3
Операционная
система
Встроенные сетевые службы (UNIX,
Windows 2000,NetWare)
Сетевая оболочка
(набор сетевых
служб) – LAN
Manager, LAN Server
1
Операционная
система
Серверная
Клиентская
оболочка
оболочка
ОС: VAX VMS, VM,
OS/400, OS/2, AIX
Сетевые службы отдельные продукты
(WinFrame – для работы в среде Windows NT,
NetWare Connect – для работы в среде
NetWare)
Операционные системы
17
5.6. Одноранговые и серверные операционные системы
Локальная
часть
К
С
Транспорт
Локальная
часть
Локальная
часть
К
К
С
Транспорт
С
Транспорт
Локальная
часть
К
С
Транспорт
Одноранговая сеть
Операционные системы
18
Сеть с выделенными серверами
Сервер
Сервер
Рабочие станции
Рабочие станции
Рабочие станции
Особенности серверных ОС:
поддержка мощных аппаратных платформ, в том числе мультипроцессорных;
поддержка большого числа одновременно выполняемых процессов и сетевых
соединений; включение в состав ОС компонентов централизованного
администрирования сети (например, службы аутентификации и авторизации
пользователей сети); более широкий набор сетевых служб.
Операционные системы
19
5.7. Служба каталогов сетевых серверных ОС
5.7.1. Понятие службы каталогов
Служба каталогов (Directory Services) представляет собой базу данных и совокупность
служб для именования, хранения и выборки информации в распределенной среде,
доступных клиентам и администраторам этой среды.
Причины, требующие в сети централизованной базы справочной информации:
1. Появление корпоративных информационных систем. Усложнение задач управления
пользователями. Централизованное хранение учетных записей пользователей.
2. Управление сетевыми ресурсами, прозрачность доступа к сетевым ресурсам.
3. Управление сетью на основе БД о топологии сети и характеристик ее компонентов.
4. Организация управления распределенными приложениями.
5. Предоставление справочной информации для работы сетевых служб и сервисов.
6. Управления качеством обслуживания сетевого трафика.
Примеры реализации службы каталогов : Novell Directory Service, Banyan Street Talk,
Microsoft windows NT Directory Service, X500 (Consultative Committee for International
Telephone and Telegraph, CCITT совместно с ISO).
Способы реализации:
1. Локальные базы справочных служб узкого (специализированного) назначения.
2. Единая централизованная справочная служба на основе распределенной базы данных
Операционные системы
20
Служба каталога использует два типа сетей
Рабочая группа
Контроллер
домена
Windows 2000
Server
Репликация
Контроллер
домена
Локальная БД
Windows 2000
Professional
Службы Active
Directory
Службы Active
Directory
Домен
Локальная БД
Локальная БД
Windows 2000
Professional
Клиентский
компьютер
Клиентский
компьютер
Локальная БД
Достоинства: простота, не требуется Windows Server,
удобство при небольшом количестве компьютеров
при наличии опытных пользователей.
Рядовой
сервер
Достоинства: централизованное администрирование,
однократный вход в систему, удобство работы,
обеспечивают масштабирование.
Операционные системы
21
5.7.2. Архитектура Active Directory
Возможности, предоставляемые службой каталогов:
- централизованное управление всеми корпоративными ресурсами;
- масштабируемость – способность охватывать домены, деревья, леса доменов;
- расширяемость каталога c возможностью добавления новых классов объектов;
- интеграция с DNS – автоматическое преобразование доменных имен в IP-адреса;
- администрирование с использованием групповых политик;
- единая регистрация в сети, доступ к ресурсам независимо от их расположения в
сети;
- безопасность информации, достигаемая централизованной защитой сети;
- гибкость изменений в структуре каталога в соответствии с изменениями в
структуре предприятия;
- репликация информации по схеме со многими ведущими.
Технологии, положенные в основу архитектуры Active Directory:
1. Стандарты X500 и X509, определяющие информационную модель данных, синтаксис и
формат цифровых сертификатов, используемых для аутентификации пользователей.
2. Стандартный протокол доступа к каталогам LDAP (Lightweight Directory Access Protocol).
3. Стек протоколов TCP/IP, являющийся основным в сетях масштаба корпорации.
4. Служба DNS, используемая для разрешения доменных имен в IP-адреса.
5.Протокол динамической конфигурации клиента DHCP. 6. Система Kerberos – протокол
аутентификации пользователей.
Операционные системы
22
Дерево доменов
Деревья различают по :
- иерархии доменов;
- непрерывности пространства имен;
- доверительным отношениям между
доменами;
- общей схеме;
- способности отображать любой
объект в списке глобального
каталога.
microsoft.com
Доверяет
clerc2.dev.microsoft.com
Пространство имен – набор правил
именования, обеспечивающих
иерархическую структуру, или путь
в дереве. По стандартам DNS имя
дочернего домена дополняется
именем родительского.
Доверяет
Общий
глобальный
каталог
clerc1.dev.microsoft.com
product.microsoft.com
dev.microsoft.com
Доверяет
Операционные системы
23
Лес доменов
доверие
доверие
доверие
доверие
msnbc.com
microsoft.com
Общий
глобальный
каталог
seattle.microsoft.com
miami.microsoft.com
ns.msnbc.com
ms.msnbc.com
доверие
доверие
Леса различаются по:
- одному или более набору деревьев;
- несвязанному пространству имен между деревьями;
- доверительным отношениям между этими деревьями;
- общей схеме;
- способности отображать любой объект в списке
глобального каталога.
Операционные системы
Доверительные отношения:
- односторонние (явное доверие);
- двусторонние - транзитивные
(полное доверие).
24
5.7.3. Контроллеры домена и сайты
DNS - сервер
1. Поиск контроллера
домена через DNS
Рабочая станция
2. Адрес контроллера
домена
LDAP - сервер
Хранилище данных
(data stores) - файл
NTDS.DIT и
глобальные каталоги
(global catalogs)
3. Доступ к данным
каталога при помощи
LDAP
4. Данные
каталога
Контроллер домена
NTDS.DIT СОДЕРЖИТ: 1. Данные домена – информация об объектах домена (учетные записи, общие ресурсы, ОП,
групповые политики). 2. Данные конфигурации (топология каталога, список лесов, деревьев, контроллеров и
серверов ГК). 3. Данные схемы - информация об объектах и типов данных, которые могут храниться в каталоге.
Операционные системы
25
5.8. Концепции распределенной обработки в сетевых ОС
Типовые функциональные части приложений:
1.
Средства представления данных на экране (графический пользовательский
интерфейс).
2.
Логика представления данных на экране – описание правил и возможностей
сценариев взаимодействия пользователя с приложением.
3.
Прикладная логика – набор правил для принятия решения, вычислительные
процедуры и операции.
4.
Логика данных – операции с данными, хранящимися в базе данных, которые
нужно выполнить для реализации прикладной логики.
5.
Внутренние операции базы данных – действия СУБД в ответ на запросы
логики данных (поиск записей по определенным признакам).
6.
Файловые операции – стандартные операции над файлами и файловой
системой.
Операционные системы
26
5.8.1. Модели распределенных приложений
Компьютер 1
1.
Двухзвенные схемы
Компьютер 2
Логика приложения Операции
и обращения к базе
базы
данных
Эмуляция
терминала
сервера
данных
Тонкий клиент
(thin client)
Сервер баз данных
Компьютер 1
2.
Файловые
операции
Логика приложения
Интерфейс и обращения к базе
пользователя
данных
Компьютер 2
Операции
базы
данных
Толстый клиент (thick client)
Файловые
операции
Сервер файлов
1. Недостаточная масштабируемость и отсутствие отказоустойчивости,
ограничение количества клиентов, простота обновления приложений.
2. Хорошая масштабируемость, рост сетевой нагрузки, необходимость
обновления приложений на всех клиентских компьютерах.
Операционные системы
27
Компьютер 1
Компьютер 2
3.
Логика приложения
Интерфейс и обращения к базе
данных
пользователя
Клиент
Операции
базы
данных
Файловые
операции
Сервер
3. Оптимальное использование сильных сторон сервера и клиента
Трехзвенные схемы
Компьютер 1
Интерфейс
пользователя
Тонкий клиент
Компьютер 2
Логика
приложения и
обращения к базе
данных
Сервер приложений
Компьютер 3
Операции
базы
данных
Файловые
операции
Сервер баз данных
Трехзвенная схема применяется для централизованной реализации в сети
общих для распределенных приложений функций, отличных от файлового
сервиса и управления базами данных. Программные модули, выполняющие эти
функции,относятся к к классу middleware (промежуточному слою). Цель –
позволить приложению (клиенту) получить доступ к различным серверным
сервисам, не беспокоясь о различиях между серверами.
Операционные системы
28
5.8.2. Передача сообщений в распределенных системах
Межпроцессное взаимодействие в компьютерных системах осуществляется:
1) совместным использованием данных, помещенных в разделяемую память;
2) передачей данных в виде сообщений.
Передачей сообщений в распределенных системах управляет
транспортная подсистема сетевой операционной системы.
Сообщение – это блок информации, отформатированный
процессом-отправителем таким образом, чтобы он был понятен
процессу-получателю.
Сообщение состоит из заголовка (обычно фиксированной длины) и набора
данных определенного типа переменной длины.
Заголовок содержит: адреса процесса-отправителя и процесса-получателя и
идентификатор сообщения (последовательный номер).
Набор данных содержит: 1) поле типа данных, указывающего, какие
данные передаются; 2) поле длины данных, определяющее длину
передаваемых данных; 3) поле данных, содержащее передаваемые данные.
Операционные системы
29
Send
Receive
TCP/UDP
TCP/UDP
IP
IP
Ethernet
Ethernet
Сетевой адаптер
Сетевой адаптер
Компьютер 2
Подсистема передачи
сообщений
Приложение
Подсистема передачи
сообщений
Компьютер 1
Приложение
Способы реализации: внутренние процедуры ядра, системные вызовы, блокирующие
или неблокирующие примитивы
Операционные системы
30
Send;
приостановка
выполнения
Тайм-аут для
исключения
блокировок
процессов
Выполнение
процессаполучателя
Выполнение
процессаотправителя
Выполнение
процессаполучателя
Receive;
приостановка
выполнения
Возобновление
выполнения
Возобновление
выполнения
Синхронное взаимодействие с помощью
блокирующих примитивов Send и Receive.
Достоинства – простота, надежность, необходимость
только 1-го буфера. Недостатки – ограниченный
параллелизм, возможность клинчей.
Тест – результат
отрицательный
Выполнение
процессаотправителя
Тест – результат
отрицательный
Тест –
результат
положит.
Тест – результат
положит.
Асинхронное взаимодействие с помощью
неблокирующих примитивов Send и Receive.
Достоинства – производительность. Недостатки:
сложность, необходимость в большом буфере,
возможность потерь данных, необходимость в
управлении потоком данных.
Операционные системы
31
5.8.3. Вызов удаленных процедур
Вызов удаленных процедур (RPC) позволяет организовать взаимодействие программ
в сети, например для организации сетевых распределенных вычислений.
Характерными чертами RPC являются:
асимметричность (одна из сторон является инициатором взаимодействия),
синхронность (выполнение вызывающей процедуры блокируется с момента
выдачи запроса и возобновляется только после возврата из вызываемой
процедуры).
Сложность реализации RPC по сравнению с вызовом локальных процедур
обусловлена:
1. Разными (разнесенными в пространстве) адресными полями компьютеров, что создает
проблемы в передаче параметров и результатов, особенно если машины и ОС не идентичны.
2. Отсутствие разделяемой памяти означает, что значения параметров должны копироваться с
одной машины на другую.
3. RPC использует нижележащую систему обмена сообщениями, однако это не должно быть явно
видно ни в определении процедур, ни в самих процедурах.
4. В реализации RPC участвует как минимум два процесса, аварийное завершение любого из них
может привести к проблемам.
5. Неоднородность языков программирования и операционных сред.
Операционные системы
32
Механизм RPC достигает прозрачности за счет использования клиентского и серверного
стаба, организующих передачу параметров и возврат значения процедуры через сеть
Компьютер-клиент
Компьютер-сервер
Процесс-клиент
Return
Call
Процедура RPC
Call
Return
Выполнение
Клиентский стаб
Распаковка
параметров
Серверный стаб
Упаковка
параметров
Сообщение: Имя, параметры
Упаковка
параметров
Распаковка
параметров
Сообщение: Результат
Ядро ОС
Ядро ОС
RPC Runtime
RPC Runtime
Receive
Send
Receive
Подсистема обмена
сообщениями
Send
Подсистема
обмена
сообщениями
Сообщение-вызов
Сообщение-ответ
Операционные системы
33
5.7.4. Сетевые файловые системы
Элементы сетевой файловой системы:
1.
Локальные файловые системы.
2.
Интерфейсы локальной файловой системы.
3.
Серверы сетевой файловой системы.
4.
Клиенты сетевой файловой системы (программы, работающие
на компьютерах, подключенных к сети).
5.
Интерфейс сетевой файловой системы.
6.
Протокол клиент-сервер сетевой файловой системы
Клиент и сервер сетевой файловой системы взаимодействуют друг с
другом по сети по определенному протоколу. В случае совпадения
интерфейсов локальной и сетевой файловых систем этот протокол будет
достаточно простым (ретрансляция серверу запросов , принятых клиентом
от приложения, например, с использованием механизма RPC).
Операционные системы
34
Модель сетевой ФС
Приложения
Интерфейс сетевой ФС
Сервер
сетевой ФС
Приложения
Клиент
сетевой ФС
Приложения
Интерфейс локальной ФС
Локальная ФС
Интерфейс сетевой ФС
Клиент
сетевой ФС
Операционные системы
35
Протокол SMB (Server Message Block – MS, Intel, IBM). Работает на
прикладном уровне, используя TCP/IP (NetBIOS, NetBEUI), IPX.
Клиент
SMB
Сообщение с запросом на установление соединения
Подтверждение. Команды манипулирования файлами.
NCP – NetWare Control Protocol
Приложение
FAT
Сервер
NFS
Клиент
NCP
NetWare Control Protocol
Сервер
NCP
Сервер
SMB
Интерфейс локальной файловой системы
Локальная файловая система NTFS
Клиент
NFS
Протокол NFS (UNIX)
Network File System
Доступ к одной локальной файловой системе с
помощью нескольких протоколов клиент-сервер
RAID-массивы
Проблемы:
1. Отказ сервера сетевой ФС (локальные табл. открытых файлов).
2. Перегрузка сервера СФС (кэширование у клиента).
3. Нарушение целостности СФС (избыточность и репликация).
4. Аутентификация
у клиента,
авторизация на сервере.
Операционные
системы
36
Download