Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Сетевые средства операционных систем. Учебное пособие
.pdf
Ларина Т.Б. Сетевые средства операционных систем
11
- механизмы авторизации для разграничения доступа
пользователей к общим ресурсам,
- аудит событий в системе, актуальных с точки зрения
безопасности.

Ларина Т.Б. Сетевые средства операционных систем
12
1.2 Основы сетевого взаимодействия
Обмен сообщениями - основа удаленного взаимодействия
Взаимодействие узлов в сети основано на организации
взаимодействия программ (процессов), выполняющихся на различных
компьютерах сети. Каково отличие сетевого взаимодействия
процессов от взаимодействия локальных процессов в вычислительной
системе?
Реальной физической основой для локальных способов
взаимодействия является разделение общей памяти. Средствами
обмена информацией между локальными процессами в ОС являются
семафоры, очереди сообщений и каналы [1].
Семафоры - это целочисленные переменные, лежащие в общей
памяти, к которым через системные вызовы могут обращаться
различные процессы.
Очереди сообщений и каналы (pipes) базируются также на
областях памяти (буферах) операционной системы, доступных
различным процессам.
Взаимодействие удаленных процессов принципиально
отличается от локального взаимодействия.
У различных компьютеров сети физически нет общей
оперативной памяти. «Удаленные процессы» на разных компьютерах
могут обмениваться только сообщениями, передавая их друг другу в
определенном формате через физический канал связи, соединяющий
компьютеры. Технически передача сообщений может быть
реализована в виде последовательностей электрических,
электромагнитных или световых сигналов.
Таким образом, в основе взаимодействия удаленных процессов
лежит передача структурированных сообщений – «пакетов
информации».
При удаленном взаимодействии «процесс–отправитель» и
«процесс-получатель» могут работать под управлением различных по

Ларина Т.Б. Сетевые средства операционных систем
13
архитектуре операционных систем и на различных платформах. Такие
сети называют «гетерогенными».
Для взаимодействия удаленных процессов особенно важна
надежность передачи данных. Протяженные линии связи часто
подвергаются физическим воздействиям, которые приводят к
искажению передаваемых сигналов (магнитные поля, помехи в эфире
и т.д.) или к полному отказу линий.
Промежуточные компьютеры сети – «посредники», которые
могут быть включены в процесс передачи, также не застрахованы от
сбоев аппаратных или программных. Поэтому компьютерные сети
должны проектироваться, заведомо исходя из предположения о
ненадежности доставки физических пакетов информации.
Адресация и взаимоисключение «удаленных процессов»
При управлении локальными процессами операционная система
выдает каждому из них числовой идентификатор. Этот ID однозначно
«адресует» данный процесс в рамках локальной системы.
Для организации взаимодействия удаленных процессов,
очевидно, каждый процесс должен получить уникальный «адрес» в
масштабах сети.
Проблема синхронизации и взаимоисключения доступа к
разделяемым ресурсам при взаимодействии удаленных процессов не
менее важна, чем для локальных.
Общим разделяемым ресурсом для удаленных процессов
является физическая линия связи. Если несколько процессов будут
одновременно передавать сообщения по линии связи, в результате
наложения физических сигналов произойдет их искажение. Это так
называемые и хорошо известные «гонки», но уже в масштабах
компьютерной сети.
Чтобы избежать этого и обеспечить устойчивую совместную
работу компьютеров, должны выполняться определенные условия
взаимоисключения при использовании общей линии связи в
компьютерной сети.

Ларина Т.Б. Сетевые средства операционных систем
14
Логическая организация связи удаленных процессов
К основным вопросам, связанным с логической организацией
взаимодействия удаленных процессов, относятся следующие [3]:
1. Как соединять компьютеры физическими линиями связи для
организации взаимодействия удаленных процессов и какими
критериями пользоваться?
2. Как избежать возникновения «гонок» при передаче
информации различными компьютерами после их подключения к
общей линии связи? Какие алгоритмы взаимоисключения могут при
этом применяться?
3. Какие виды интерфейсов предоставляют пользователям
операционные системы для передачи информации по сети?
4. Какие существуют модели взаимодействия удаленных
процессов? Как процессы, работающие под управлением различных
операционных систем, могут общаться друг с другом?
5. Какие существуют способы для «адресации» удаленных
процессов?
6. Как организуется доставка информации от компьютераотправителя к компьютеру-получателю в разветвленной сети через
компьютеры-посредники? Как выбирается маршрут для передачи
данных, если есть несколько вариантов?
Значимость тех или иных вопросов во многом зависит от того, с
какой точки зрения рассматривать взаимодействие удаленных
процессов.
Системного программиста в первую очередь интересуют
программные интерфейсы, предоставляемые операционными
системами. Сетевого администратора больше интересуют вопросы
адресации процессов и выбора маршрута доставки сообщений,
использования сетевых служб. Проектировщика сетей больше волнуют
способы объединения компьютеров и обеспечения правильного
использования разделяемых сетевых ресурсов.

Ларина Т.Б. Сетевые средства операционных систем
15
Программная коммуникационная система сети
Транспортные средства ОС
компьютеров-узлов сети
Сетевые средства
специализированных ОС
активного сетевого
оборудования
В данном учебном пособии остановимся на следующих
вопросах:
- основы организации взаимодействия удаленных процессов;
- программные интерфейсы сетевого взаимодействия;
- основные сетевые службы операционных систем
Транспортная подсистема сетевых ОС
Задача транспортной подсистемы в структуре сетевой
операционной системы – оградить клиентскую и серверную
компоненты ОС от деталей сети и предоставить в их распоряжение
уже готовые процедуры для передачи сообщений.
Транспортные средства ОС являются частью
коммуникационных средств компьютерной сети. Помимо собственно
компьютерных узлов и их операционных систем, коммуникационные
средства сети включают в себя и необходимые промежуточные узлы:
маршрутизаторы, коммутаторы и другое оборудование.
Сложное (активное) коммуникационное оборудование имеет
свое специализированное программное обеспечение.
Транспортные средства универсальных ОС компьютеров сети и
сетевые средства специализированных ОС оборудования образуют
единую программную коммуникационную систему (рис.1-4).
Рис.1-4. Единая программная коммуникационная система

Ларина Т.Б. Сетевые средства операционных систем
16
Протоколы взаимодействия
При описании взаимодействия удаленных процессов и функций
сетевых операционных систем, отвечающих за это взаимодействие,
используется фундаментальное понятие – протокол (соглашение).
Чтобы удаленные процессы могли обмениваться данными,
сетевые части операционных систем должны руководствоваться
определенными «соглашениями», или, как принято говорить,
поддерживали определенные протоколы.
Локальные процессы при взаимодействии также
руководствуются определенными соглашениями. В роли таких
протоколов выступают, например, соглашения о входных и выходных
параметрах системных вызовов.
По сути, способы решения проблем удаленного взаимодействия
представляют собой набор соглашений, которых должны
придерживаться сетевые части операционных систем – «сетевые
протоколы». Именно наличие сетевых протоколов позволяет
организовать взаимодействие удаленных процессов.
Протоколы и тип вычислительной сети
На практике принято говорить о вычислительных сетях трех
типов [2]: локальные вычислительные сети (LAN – Local Area
Network), глобальные вычислительные сети (WAN – Wide Area
Network) и муниципальные (городские) вычислительные сети (MAN –
Metropolitan Area Network).
Принадлежность сети к тому или иному типу часто
определяется просто взаимным расположением компьютеров сети.
Так, к локальным сетям относят сети, состоящие из компьютеров
одной организации, размещенные в пределах одного или нескольких
зданий. К глобальным сетям – сети, охватывающие компьютеры в
нескольких городах и далее. Муниципальные (городские) сети объединение компьютеров различных организаций в пределах одного
города или района.
Исходя из территориального размещения, упрощенно можно
рассматривать глобальные сети, как состоящие из локальных и

Ларина Т.Б. Сетевые средства операционных систем
17
муниципальных сетей. А муниципальные сети, как состоящие из
нескольких локальных сетей.
По существу же, деление сетей на типы обычно связано не
столько с местоположением, сколько с различными протоколами,
используемыми для организации взаимодействия в сети.
Многоуровневая модель организации сетевого
взаимодействия
Наиболее эффективная современная концепция организации
сетевого взаимодействия предусматривает многоуровневый подход.
Количество и функции промежуточных уровней может варьироваться.
Многоуровневое представление средств сетевого
взаимодействия предполагает, что соглашения о взаимодействии
должны быть приняты на всех уровнях, начиная с самого низкого –
физической связи между узлами сети, и заканчивая самым высоким –
уровнем пользовательских процессов.
Формализованное описание процедуры взаимодействия
компонент одного уровня в разных узлах сети называют
«протоколом».
Протоколы нижних уровней реализуют совместно аппаратными
и программными средствами, протоколы верхних уровней –
программно. Программный модуль, реализующий некоторый
протокол, для краткости называют так же – «сетевой протокол».
Протокол, определяющий правила взаимодействия и форматы
передаваемых данных для одинаковых уровней в разных компьютерах
сети, называют «горизонтальный» протокол.
"Слоеное" строение имеют и сами операционные системы. Здесь
каждый уровень может взаимодействовать непосредственно только с
высшим или нижним по отношению к нему уровнем. Это означает, что
N-й уровень операционной системы предоставляет свои сервисы
уровню (N+1), пользуясь в свою очередь только сервисами уровня (N -
1).

Ларина Т.Б. Сетевые средства операционных систем
18
Правила взаимодействия соседних уровней в одном узле
называют «вертикальным» протоколом или интерфейсом.
Всю иерархическую совокупность вертикальных и
горизонтальных протоколов (интерфейсов и сетевых протоколов) для
взаимодействия узлов в сети называют «стек протоколов».
Сети, построенные на основе разных стеков протоколов, могут
быть объединены между собой только с использованием
вычислительных устройств, выполняющих трансляцию из одного
стека протоколов в другой на всех уровнях слоеной сетевой
структуры.
Эталоном многоуровневой схемы построения сетевых средств
взаимодействия считается семиуровневая модель открытого
взаимодействия систем OSI (Open System Interconnection Model). Она
предложена Международной организацией Стандартов (International
Standard Organization – ISO) [2].
Основные принципы уровневого взаимодействия
Многоуровневое взаимодействие сетевых средств компьютеров
сети основано на следующих подходах:
компоненты одного уровня одной системы могут
взаимодействовать с компонентами только такого же уровня другой
системы
в одной системе компоненты одного уровня могут
взаимодействовать только с компонентами вышележащего и
нижележащего уровней
набор правил, определяющих порядок взаимодействия средств,
функционирующих в разных системах и относящихся к одному
уровню, называется «протоколом»
правила взаимодействия между компонентами,
функционирующими в одной системе и относящимися к смежным
уровням, называются «интерфейсом»

Ларина Т.Б. Сетевые средства операционных систем
19
1.3 Уровни и протоколы сетевого взаимодействия
Семиуровневая модель OSI
Для решения проблемы совместимости большого количества
стеков протоколов, разработанных различными фирмами для сетевого
взаимодействия, был предложен единый стандарт построения стека
протоколов – модель открытого взаимодействия OSI.
Эта модель предлагает не конкретную реализацию набора
протоколов, а эталон многоуровневого сетевого взаимодействия в
обобщенном виде. Эта модель включает:
перечень уровней взаимодействия для сетей с
коммутацией пакетов *
стандартные названия уровней
функции, которые должен выполнять каждый уровень.
(*) Современные компьютерные сети работают на основе
техники коммутации пакетов. До появления компьютеров
телекоммуникационные сети (например, телефонные) использовали
технику коммутации каналов.
Коммутация пакетов предполагает, что передаваемые данные
разбиваются в узле-отправителе на пакеты (кадры). Каждый пакет
снабжается заголовком, где указан адрес узла-получателя. В конце
пакета имеется дополнительное поле – «концевик», где помещается
контрольная сумма, которая позволяет определить факт искажения
информации при передаче по сети.
Предлагаемые моделью OSI средства взаимодействия делятся
на семь уровней: прикладной, уровень представления, сеансовый,
транспортный, сетевой, канальный и физический (рис.1-5) [2].
Модель OSI описывает только системные средства
взаимодействия, которые реализуются операционной системой,
системными утилитами и системными устройствами.

Ларина Т.Б. Сетевые средства операционных систем
20
Рис.1-5. Уровни сетевого взаимодействия по модели OSI
Приложения обращаются к стеку протоколов через прикладной
программный интерфейс - API (Application Program Interface), который
предоставляет им операционная система в виде системных вызовов.
В соответствии с эталонной моделью OSI приложение должно
обращаться с запросами только к самому высокому уровню стека
протоколов – прикладному.
Замечание. На практике многие стеки коммуникационных
протоколов предоставляют возможность программного обращения к
сервисам и нижележащих уровней.
Механизм передачи программного удаленного запроса в
соответствии с моделью OSI
Рассмотрим механизм передачи программного запроса на
удаленный ресурс на примере. Пусть, Приложение А компьютера 1
хочет обратиться к приложению В компьютера 2 (рис.1-6).
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
