Общие (совместно потребляемые ресурсы ) – это особый вид общественных благ. К сожалению по достоинству он представлен далеко не всегда. Под общностью в данном случае понимается не юридическая категория общей собственности, а общий режим совместного хозяйственного использования ресурсов, необходимость которого определяется существенными неэкономическими ограничениями, исключающими их свободное воспроизводство. Хотя именно в связи с неэкономическими ограничениями воспроизводимости, необходимо учитывать их существенные экономические особенности. Во-первых, они имеют, как правило, не потребительский, а производственный характер. Во-вторых, это капитальные блага, для которых необходимо определять режим использования в долгом периоде не только в хронологическом, но и в экономическом смысле, когда следует предполагать и рассматривать возможности любых изменений относительно вероятности сохранения и исчерпания данного ресурса. В-третьих, обычно они имеют устойчивую асимметрию свойств конкурентности и исключаемости, т.е. конкурентны (являются объектами конкуренции), когда не имеют свойства исключаемости, и, наоборот, перестают быть конкурентными, когда приобретают исключаемость или, другими словами, «неисключаемы, когда конкурентны» (создание и использование знаний, информации, в том числе, земельные кадастры, метеорологическая служба), и «неконкурентны, когда исключаемы» (использование невоспроизводимых природных ресурсов, в том числе добыча нефти и газа).
К настоящему времени достаточно четко определились именно эти два вида общих (совместно используемых) свободно не воспроизводимых ресурсов. Они расположены на полюсах системы ресурсов: невоспроизводимые природно-сырьевые ресурсы и практически безграничные интеллектуально-информационые ресурсы. Доступ к ним, особенно в России, только казался практически свободным потому, что они имеют большое разнообразие и огромные масштабы. К сожалению, только в последние годы стали осознаваться смысл и значение проблем ограниченности невоспроизводимых природных ресурсов и невоспроизводимости ограниченных (редких) природных ресурсов. Информационные и интеллектуальные ресурсы нельзя считать свободно воспроизводимыми в силу их уникальности, неповторимости фундаментальных открытий и изобретений, талантов и творчества их авторов.
К невоспроизводимым природно-сырьевым ресурсам относятся участки территории и акватория страны, региона, недр, полезных ископаемых, воздушного пространства (авиамаршруты), шельфов, электромагнитных полей (радиочастоты). Неэкономические (физические, химические, био-, физио-, этологические и др.) ограничения имеет воспроизводство лесного и сельского хозяйства, рыбных промыслов и других экосистем, в том числе почвы (гумуса) и других биогеоценозов. Как правило, эффективные масштабы (границы) их воспроизводства не совпадают с контурами системы и объектов собственности. Нечто подобное возникает и в отношении воспроизводства, создания и использования информационных и интеллектуальных ресурсов.
Исторически сложилось такое положение, когда российское государство стало основным продавцом природно-сырьевых ресурсов и основным покупателем информационно-интеллектуальных ресурсов. Может быть это явление следует рассматривать не только в качестве особенности национальной экономики России, но и как общую экономическую закономерность экономики с доминированием в национальных активах общих свободно невоспроизводимых ресурсов?
Не всегда строго юридически, но всегда в виде реального права, а также институционально, организационно и экономически общий режим использования невоспроизводимых природно-сырьевых ресурсов оформился и закрепился как естественная монополия государства (или органов местного самоуправления, муниципалитетов) на их продажу, предоставление в аренду, в концессию и другие формы пользования. Результаты фундаментальной науки и связанного с ними образования (подготовки молодых ученых и специалистов для фундаментальной науки) редко находят покупателей и заказчиков в частном, не только потребительском, но и предпринимательском, секторе экономики. Поэтому в научной и образовательной сфере вполне естественно возникает государственная монопсония, когда государство в общенациональных интересах играет роль организатора, координатора, заказчика, покупателя, кредитора, финансиста, лицензиара и носителя других функций, необходимых для обеспечения национальной конкурентоспособности в сфере фундаментальной науки и образования.
Важной особенностью общих ресурсов является неэластичный характер их предложения. Как было показано выше (темы 9,10), в таких случаях возникают многочисленные, разнообразные, большой величины рентные доходы (рента природно-ресурсная , земельная, горная, абсолютная, относительная, монопольная, экономическая, квазирента и др.). В последнее время в теории ренты рассматриваются такие ее новые виды, как рента государственная, финансовая, страховая, инфрамаржинальная, отстроченная, региональная, информационная, интеллектуальная и др.
Думается, что некоторые признаки общих, совместно используемых, свободно невоспроизводимых ресурсов, генерирующих рентные доходы, имеют многие элементы национального богатства и национальных активов – здоровье нации, человеческий капитал, национальный экологический потенциал и др. В связи с этим развиваются новые ресурсные и рентные концепции доходов, издержек, налогообложения и др.
Совместное использование ресурсов и управление ими
Одной из важных задач операционной системы является управление имеющимися в ее распоряжении ресурсами (основной памятью, устройствами ввода-вывода, процессором), а также их распределение между разными активными процессами. При разработке стратегии распределения ресурсов необходимо принимать во внимание следующие факторы.
Равноправность
. Обычно желательно, чтобы всем процессам, претендующим на какой-то определенный ресурс, предоставлялся к нему одинаковый
доступ. В особенности это касается заданий, принадлежащих к одному и
тому же классу, т.е. заданий с аналогичными требованиями к ресурсам.
Дифференциация отклика
. С другой стороны, может понадобиться, чтобы
операционная система по-разному относилась к заданиям различного класса, имеющим различные запросы. Нужно попытаться сделать так, чтобы
операционная система выполняла распределение ресурсов в соответствии с целым набором требований. Операционная система должна действовать в
зависимости от обстоятельств. Например, если какой-то процесс ожидает
доступа к устройству ввода-вывода, операционная система может спланировать выполнение этого процесса так, чтобы как можно скорее освободить
устройство для дальнейшего использования другими процессами.
Эффективность
. Операционная система должна повышать пропускную способность системы, сводить к минимуму время ее отклика и, если она работает в системе разделения времени, обслуживать максимально возможное
количество пользователей. Эти требования несколько противоречат друг
другу; насущной проблемой исследования операционных систем является поиск нужного соотношения в каждой конкретной ситуации.
Задача управления ресурсами и их распределения типична для исследований операционных систем; здесь могут применяться математические результаты, полученные в этой области. Кроме того, важно измерять активность системы, что позволяет следить за ее производительностью и вносить коррективы в ее работу.
На рис. 2.11 показаны основные элементы операционной системы, участвующие в планировании процессов и распределении ресурсов в многозадачной среде. Операционная система поддерживает несколько очередей, каждая из которых является просто списком процессов, ожидающих своей очереди на использование какого-то ресурса. В краткосрочную очередь заносятся процессы, которые (или, по крайней мере, основные части которых) находятся в основной памяти и готовы к выполнению. Выбор очередного процесса осуществляется краткосрочным планировщиком, или диспетчером. Общая стратегия состоит в том, чтобы каждому находящемуся в очереди процессу давать доступ по очереди; такой метод называют циклическим (round-robin). Кроме того, процессам можно присваивать различный приоритет.
Рис. 2.11. Ключевые элементы многозадачной операционной системы
В долгосрочной очереди находится список новых процессов, ожидающих возможности использовать процессор. Операционная система переносит их из долгосрочной очереди в краткосрочную. В этот момент процессу необходимо выделить определенную часть основной памяти. Таким образом, операционная система должна следить за тем, чтобы не перегрузить память или процессор, добавляя в систему слишком много процессов. К одному и тому же устройству ввода-вывода могут обращаться несколько процессов, поэтому для каждого устройства создается своя очередь. И здесь операционная система должна решать, какому процессу предоставить освободившееся устройство ввода-вывода в первую очередь.
Во время прерывания управление переходит к обработчику прерываний, который является частью операционной системы. В силу своей функциональности процесс может обратиться к некоторому сервису операционной системы, например к драйверу устройства ввода-вывода. При этом происходит вызов обработчика обращений к сервисам, который становится точкой входа в операционную систему. Независимо от того, произошло ли прерывание или обращение к сервису, после его обработки планировщик выберет из краткосрочной очереди процесс для выполнения.
Структура системы
С добавлением в операционные системы все новых функций, а также с ростом возможностей управляемого операционными системами аппаратного обеспечения и его разнообразия возрастает степень их сложности. Операционная система CTSS, введенная в эксплуатацию в Массачусетском технологическом институте в 1963 году, занимала в памяти около 32000 36-битовых слов. Операционная система OS/360, выпущенная фирмой IBM через год, содержала более миллиона машинных команд. Система Multics, совместная разработка которой была завершена специалистами Массачусетского технологического института и компанией Bell Laboratories к 1975 году, разрослась до 20 миллионов команд. Ради справедливости отметим, что впоследствии на меньших машинах стали появляться операционные системы и попроще, но и они неуклонно усложнялись с развитием аппаратного обеспечения и ростом требований со стороны пользователей. Так, современная система UNIX по своей сложности намного превосходит свой почти игрушечный первоначальный вариант, разработанный несколькими талантливыми программистами в начале 70-х годов. То же самое произошло с простой системой MS-DOS, со временем переросшей в сложные и мощные операционные системы OS/2 и Windows 2000. Так, операционная система Windows NT содержит около 16 миллионов строк кода, а в Windows 2000 этот показатель увеличен более чем в два раза.
Увеличение размера полнофункциональных операционных систем и сложности выполняемых ими задач стало причиной возникновения трех широко распространенных проблем. Во-первых, операционные системы доходят до пользователей с хроническим опозданием. Это касается как выпуска новых операционных систем, так и обновления уже существующих. Во-вторых, в системах появляются скрытые ошибки, которые начинают проявлять себя в рабочих условиях и требуют исправления и доработки системы. В-третьих, рост производительности зачастую происходит не так быстро, как планируется.
Как же следует организовать структуру операционных систем, чтобы упростить работу с ними и преодолеть перечисленные проблемы? Некоторые решения очевидны. Программное обеспечение должно состоять из модулей, что упростит организацию процесса его разработки и облегчит выявление и устранение ошибок. Модули по отношению друг к другу должны иметь тщательно разработанные и максимально простые интерфейсы, что также облегчит задачи программиста. Кроме того, меньше усилий потребует эволюция такой системы. Если взаимодействие модулей друг с другом происходит по простым и четким правилам, изменение любого модуля окажет минимальное влияние на остальные.
Однако оказалось, что для больших операционных систем, код которых состоит из миллионов или десятков миллионов строк, принцип модульного программирования сам по себе не избавляет от всех проблем. По этой причине возросла популярность концепции уровней иерархии, а также информационной абстракции. В иерархической структуре современной операционной системы различные функции находятся на разных уровнях в зависимости от их сложности, временных характеристик и степени абстракции. Систему можно рассматривать как набор уровней, каждый из которых выполняет свой ограниченный круг заданий, входящий в комплекс задач операционной системы. Работа компонентов определенного уровня основывается на работе компонентов, находящихся на более низком уровне; функции более высокого уровня используют примитивы нижнего по отношению к нему уровня. В идеале уровни должны быть определены так, чтобы при изменении одного из них не изменялись остальные.
Как правило, чем ниже уровень, тем меньше время работы его компонентов. Некоторые элементы операционной системы должны непосредственно взаимодействовать с аппаратным обеспечением компьютера, элементарные процессы в котором иногда длятся не более нескольких миллионных долей секунды. Составляющие операционной системы, поддерживающие взаимосвязь с пользователем, находятся на другом конце временного диапазона. Пользователи вводят команды весьма медленно - до одной команды за несколько секунд.
В каждой отдельно взятой операционной системе перечисленные принципы применяются по-разному. Для получения общего представления об операционных системах на данном этапе изложения представим пример обобщенной модели иерархической операционной системы, описанной в и . Она, несомненно, полезна для понимания сути дела, хотя и не соответствует ни одной реальной операционной системе. Сама модель приведена в табл. 2.4 и состоит из следующих уровней.
Уровень 1. В него входят электронные схемы; объектами данного уровня
являются регистры, ячейки памяти и логические элементы. Над этими объектами выполняются различные действия, такие, как очистка содержимого
регистра или считывание ячейки памяти.
Уровень 2. Набор команд процессора. В число операций, выполняемых на
этом уровне, входят те, которые допускаются набором команд машинного
языка, например сложение, вычитание, загрузка значения из регистра или
сохранение в нем.
Уровень 3. Содержит концепцию процедуры (подпрограммы), а также операции вызова и возврата.
Уровень 4. Уровень прерываний, которые заставляют процессор сохранить
текущий контекст и выполнить подпрограмму обработки прерывания.
На самом деле первые четыре уровня не являются частями операционной системы, они составляют аппаратное обеспечение процессора. Однако на этих уровнях уже появляются некоторые элементы операционной системы, такие, как программы обработки прерываний. Вплотную к операционной системе мы подходим только на пятом уровне, на котором возникают концепции, связанные с многозадачностью.
Уровень 5. На этом уровне вводится понятие процесса, под которым подразумевается работающая программа. В число фундаментальных требований к
операционной системе, способной поддерживать одновременную работу не
скольких процессов, входят способность приостанавливать процессы и возобновлять их выполнение. Для этого необходимо сохранять содержимое
регистров аппаратного обеспечения, чтобы можно было переключаться с одного процесса на другой. Кроме того, если процессы должны взаимодействовать между собой, необходим механизм их синхронизации. Одной из важнейших концепций устройства операционных систем является семафор - простейший способ передачи сигналов, который рассмотрен в главе 5, "Параллельные вычисления: взаимоисключения и многозадачность".
Уровень 6. Компоненты этого уровня взаимодействуют со вспомогательными запоминающими устройствами компьютера. На этом уровне происходит
позиционирование считывающих головок и физическая передача блоков
данных. Для планирования работы и уведомления процесса о завершении
запрошенной операции уровень 6 использует компоненты уровня 5.
Уровень 7. Создает логическое адресное пространство процессов. Уровень
организует виртуальное адресное пространство в виде блоков, которые могут перемещаться между основной памятью и вспомогательным запоминающим устройством. Широко распространены следующие три схемы: использование страниц фиксированного размера, использование сегментов переменного размера и комбинация тех и других. Если нужный блок отсутствует в основной памяти, то данный уровень передает уровню 6 запрос о передаче этого блока.
До сих пор речь шла только о взаимодействии операционной системы с процессором. Компоненты операционной системы, относящиеся к восьмому и более высоким уровням, вступают во взаимодействие с внешними объектами, такими, как периферийные устройства, а возможно - с сетью и компьютерами, подключенными к сети. Объектами этих уровней являются логические именованные объекты, которые могут совместно использоваться несколькими процессами, исполняющимися на одном или на нескольких компьютерах.
Уровень 8. Отвечает за обмен информацией и сообщениями между процессами.
На этом уровне происходит более богатый обмен информацией, чем на уровне 5,
который обеспечивает работу первичного сигнального механизма для синхронизации процессов. Одним из наиболее мощных инструментов подобного типа является конвейер, представляющий собой логический канал передачи данных
между процессами. Конвейер определяется как канал, передающий вывод одного процесса на вход другого; кроме того, он может быть использован и для связи с процессом внешних устройств или файлов. Эта концепция рассматривается в главе 6, "Взаимоблокировка и голодание".
Уровень 9. Обеспечивает долгосрочное хранение файлов. На этом уровне данные, хранящиеся на вспомогательном запоминающем устройстве, рассматриваются как абстрактные объекты переменной длины, в противоположность аппаратно-зависимому рассмотрению вторичной памяти как набора дорожек, секторов и блоков фиксированного размера, присущему уровню 6.
Уровень 10. Предоставляет доступ к внешним устройствам с помощью
стандартных интерфейсов.
Уровень 11. Поддерживает связь между внешними и внутренними идентификаторами системных ресурсов и объектов. Внешний идентификатор - это имя,
которое может использоваться приложением или пользователем. Внутренний
идентификатор - это адрес или другой индикатор, используемый нижними
уровнями операционной системы для обнаружения объекта и управления им.
Эта связь поддерживается с помощью каталога, который включает в себя не
только взаимное отображение внешних и внутренних идентификаторов, но и
такие характеристики, как, например, права доступа.
Уровень 12. Предоставляет полнофункциональные средства поддержки
процессов. Возможности этого уровня намного превосходят возможности уровня 5, на котором поддерживается только содержимое регистров процессора, имеющее отношение к процессу, и логика диспетчеризации процессов. На уровне 12 эта информация используется для упорядоченного управления процессами. Сюда же относится и виртуальное адресное пространство процессов, список объектов и процессов, с которыми оно может взаимодействовать, и правила, ограничивающие это взаимодействие; параметры, переданные процессам при их создании, и прочие характеристики процессов, которые могут быть использованы операционной системой для управления.
Уровень 13. Обеспечивает взаимодействие операционной системы с пользователем. Этот уровень называется оболочкой (shell), так как он отделяет пользователя от деталей внутреннего устройства операционной системы и представляет ее пользователю как набор сервисов. Оболочка принимает команды пользователя или инструкции-управления заданиями, интерпретирует их, создает необходимые процессы и управляет ими. На этом уровне, например, может быть реализован графический интерфейс, предоставляющий пользователю возможность выбора команды с помощью меню и отображающий результаты работы на экране.
Описанная гипотетическая модель операционной системы дает представление о ее структуре и может служить руководством по реализации конкретной операционной системы. В процессе изучения изложенного в настоящей книге курса читателю будет полезно время от времени возвращаться к этой структуре, чтобы лучше понимать, как отдельные компоненты операционных систем соотносятся друг с другом.
Таблица 2.4. Иерархическая модель операционной системы2
Под ресурсами ПК будет пониматься любой из следующих элементов:
Логические диски, включая накопители на CD-ROM, ZIP, DVD и другие аналогичные устройства;
Каталоги (папки) с подкаталогами (вложенными папками) или без них, а также содержащиеся в них файлы;
Подключенные к ПК устройства: принтеры, модемы и др.
Ресурс, доступный только с ПК, на котором он находится, называется локальным. Ресурс ПК, доступный для других компьютеров сети, называется разделяемым или сетевым (общим, совместно используемым). Локальный ресурс можно сделать разделяемым, и, наоборот, разделяемому ресурсу можно вернуть статус локального, т. е. запретить доступ к нему других пользователей сети.
Создание разделяемых сетевых ресурсов и доступ к ним обеспечиваются специальными сетевыми операционными системами . Базовые сетевые возможности сетевых ОС позволяют копировать файлы с одного ПК сети на другой, с одного компьютера сети обрабатывать данные (вводить, редактировать, удалять, производить поиск), размещенные на другом. Для некоторых сетевых ОС можно также запустить программу, размещенную в памяти одного компьютера, которая будет оперировать данными, хранящимися на другом ПК.
Обычно используются один или несколько мощных ПК (выделенные серверы), которые предоставляют свои ресурсы для совместного использования в сети. Система коллективного доступа работает по принципу разделения времени работы главного компьютера.
В зависимости от используемых сетевых ресурсов в иерархических сетях различают серверы следующих типов.
Файловый сервер. В этом случае на сервере находятся совместно обрабатываемые файлы или (и) совместно используемые программы. В этом случае на рабочих станциях находится только небольшая (клиентская) часть программ, требующая незначительных ресурсов. Программы, допускающие такой режим работы, называются программами с возможностью инсталляции в сети. Требования к мощности сервера и пропускной способности сети при таком способе использования определяются количеством одновременно работающих рабочих станций и характером используемых программ.
Сервер баз данных. На сервере размещается база данных, которая может пополняться с различных рабочих станций или (и) выдавать информацию по запросам с рабочей станции. Возможны два принципиально различающихся режима обработки запросов с рабочей станции или редактирования записей в базе данных:
С сервера последовательно пересылаются записи базы данных на рабочую станцию, где производится собственно фильтрация записей и отбор необходимых;
Сервер сам отбирает необходимые записи из БД (реализует запрос) и пересылает их на рабочую станцию.
Во втором случае снижаются нагрузка на сеть и требования к рабочим станциям, но резко возрастают требования к вычислительной мощности сервера. Тем не менее именно такой способ обработки запросов является наиболее эффективным. Указанный способ удовлетворения запросов с рабочих станций называется режимом клиент-сервер, его реализуют специальные средства работы с современными сетевыми базами данных. В системах клиент-сервер обработка данных разделена между двумя объектами: клиентом и сервером. Клиент - это задача, рабочая станция, пользователь. Он может сформировать запрос для сервера: считать файл, осуществить поиск записи и т.п. Сервер - это устройство или компьютер, выполняющий обработку запроса. Он отвечает за хранение данных, организацию доступа к этим данным и передачу данных клиенту.
Принт-сервер. К компьютеру небольшой мощности подключается достаточно производительный принтер, на котором может быть распечатана информация сразу с нескольких рабочих станций. Программное обеспечение организует очередь заданий на печать, а также идентифицирует отпечатанную информацию специальными страницами (закладками), которые разделяют печатные материалы различных пользователей.
Почтовый сервер. На сервере хранится информация, отправляемая и получаемая как по локальной сети, так и извне (например, по модему). В любое удобное для него время пользователь может просмотреть поступившую на его имя информацию или отправить через почтовый сервер свою.
Топологии
Топология – геометрическое отображение отношений в сети. По топологии ЛВС делятся: на общую шину, кольцо, звезду и др.
Топология “звезда”
Звездообразная топология сети – разновидность сети, где каждый терминал соединен с центральной станцией (рис. 2).
Эта топология взята из области больших электронных вычислительных машин. Здесь файловый сервер находится в “центре”.
Достоинства сети:
Повреждение кабеля является проблемой для одного конкретного компьютера и в целом не сказывается на работе сети;
Просто выполняется подключение, так как рабочая станция должна соединяться только с сервером;
Механизмы защиты против несанкционированного доступа оптимальны;
Высокая скорость передачи данных от рабочей станции к серверу, так как оба ПК непосредственно соединены друг с другом.
Недостатки:
В то время как передача данных от рабочей станции к серверу (и обратно) происходит быстро, скорость передачи данных между отдельными рабочими станциями мала;
Мощность всей сети зависит от возможностей сервера, если он недостаточно оснащен или плохо сконфигурирован, то будет являться тормозом для всей системы;
Невозможна коммуникация между отдельными рабочими станциями без помощи сервера.
Рис 2. Топология типа “звезда”
Топология с сервером в центре, практически, не реализуется, так как в этом случае сервер должен иметь много сетевых адаптеров, рабочие станции подключаются к концентратору (хабу).
Кольцевая топология
Сеть типа “кольцо” – разновидность сети, в которой каждый терминал подключен к двум другим соседним терминалам кольца.
В этом случае все рабочие станции и сервер соединены друг с другом по кольцу, по которому посылается информация, снабженная адресом получателя. Рабочие станции получают соответствующие данные, анализируя адрес посланного сообщения (рис. 3).
Рис. 3. Кольцевая топология
Достоинство сети типа “кольцо”:
Недостатки:
Время передачи данных увеличивается пропорционально числу соединенных в кольцо компьютеров;
Каждая рабочая станция причастна к передаче данных, выход из строя одной станции может парализовать всю сеть, если не используются специальные переходные соединения;
При подключении новых рабочих станций сеть должна быть кратковременно выключена.
Шинная топология
Такая сеть похожа на центральную линию, к которой подключены сервер и отдельные рабочие станции. Шинная топологии имела широкое распространение в прежние годы, что, прежде всего, можно объяснить небольшими потребностями в кабеле (рис. 4).
Рис. 4. Шинная топология
Достоинства шинной топологии:
Небольшие затраты на кабели;
Рабочие станции в любой момент времени могут быть установлены или отключены без прерывания работы всей сети;
Рабочие станции могут коммутироваться друг с другом без помощи сервера.
Недостатки:
При обрыве кабеля выходит из строя весь участок сети от места разрыва;
Возможность несанкционированного подключения к сети, поскольку для увеличения числа рабочих станций нет необходимости в прерывании работы сети.
Комбинированная структура ЛВС
Наряду с известными топологиями вычислительных сетей: кольцо, звезда и шина – на практике применяется и комбинированная. Она образуется в основном в виде комбинаций вышеназванных топологий вычислительных сетей (рис. 5).
Рис 5. Комбинированная структура
Вычислительные сети с комбинированной структурой применяются там, где невозможно непосредственное применение базовых сетевых структур в чистом виде. Для подключения большого числа рабочих станций применяют сетевые усилители и(или) коммутаторы. Коммутатор, обладающий одновременно и функциями усилителя, называют активным концентратором.
Пассивный концентратор обычно используют как разветвитель. Он не нуждается в усилителе. Предпосылкой для подключения пассивного концентратора является то, что максимальное возможное расстояние до рабочей станции не должно превышать нескольких десятков метров.
Семиуровневая модель ЛВС
ЛВС должна иметь надежную и быструю систему передачи данных, стоимость которой должна быть меньше по сравнению со стоимостью подключаемых рабочих станций. Иными словами, стоимость передаваемой единицы информации должна быть значительно ниже стоимости обработки информации в рабочих станциях. Исходя из этого ЛВС, как система распределенных ресурсов, должна основываться на следующих принципах:
Единой передающей среды;
Единого метода управления;
Единых протоколов;
Гибкой модульной организации;
Информационной и программной совместимости.
Международная организация по стандартизации (ISO), основываясь на опыте многомашинных систем, который был накоплен в разных странах, выдвинула концепцию архитектуры открытых систем – эталонную модель, используемую при разработке международных стандартов.
На основе этой модели вычислительная сеть предстает как распределенная вычислительная среда, включающая в себя большое число разнообразных аппаратных и программных средств. По вертикали данная среда представляется рядом логических уровней, на каждый из которых возложена одна из задач сети. По горизонтали информационно-вычислительная среда делится на локальные части (открытые системы), отвечающие требованиям и стандартам структуры открытых систем.
Часть открытой системы, выполняющая некоторую функцию и входящая в состав того или иного уровня, называется объектом .
Правила, по которым осуществляется взаимодействие объектов одного и того же уровня, называются протоколом.
Протокол – набор правил и процедур, регламентирующий обмен данными.
Протоколы определяют порядок обмена информацией между сетевыми объектами. Они позволяют взаимодействующим рабочим станциям посылать друг другу вызовы, интерпретировать данные, обрабатывать ошибочные ситуации и выполнять множество других различных функций. Суть протоколов заключается в регламентированных обменах точно специфицированными командами и ответами на них (например, назначение физического уровня связи – передача блоков данных между двумя устройствами, подключенными к одной физической среде).
Для протокола передачи данных требуется следующая информация:
Синхронизация. Под синхронизацией понимают механизм распознавания начала блока данных и его конца.
Инициализация. Под инициализацией понимают установление соединения между взаимодействующими партнерами. При условии, что приемник и передатчик используют один и тот же протокол, синхронизация устанавливается автоматически.
Блокирование. Под блокированием понимают разбиение передаваемой информации на блоки данных строго определенной максимальной длины (включая опознавательные знаки начала блока и его конца).
Адресация. Адресация обеспечивает идентификацию различного используемого оборудования, которое обменивается друг с другом информацией во время взаимодействия.
Обнаружение ошибок. Под обнаружением ошибок понимают установку и проверку контрольных битов.
Нумерация блоков. Текущая нумерация блоков позволяет установить ошибочно передаваемую или потерявшуюся информацию.
Управление потоком данных. Управление потоком данных служит для распределения и синхронизации информационных потоков. Так, например, если не хватает места в буфере устройства данных или данные не достаточно быстро обрабатываются в периферийных устройствах, сообщения и(или) запросы накапливаются.
Методы восстановления. После прерывания процесса передачи данных используют методы восстановления, чтобы вернуться к определенному положению для повторной передачи информации.
Разрешение доступа. Распределение, контроль и управление ограничениями доступа к данным вменяются в обязанность пункта разрешения доступа (например, “только передача” или “только прием”).
Каждый уровень подразделяется на две части:
Спецификация услуг;
Спецификация протокола.
Спецификация услуг определяет, что делает уровень , а спецификация протокола - как он это делает . Причем каждый конкретный уровень может иметь более одного протокола.
Большое число уровней, используемых в модели, обеспечивает декомпозицию информационно-вычислительного процесса на простые составляющие. В свою очередь, увеличение числа уровней вызывает необходимость включения дополнительных связей в соответствии с дополнительными протоколами и интерфейсами. Интерфейсы (макрокоманды, программы) зависят от возможностей используемой ОС.
Международная организация по стандартизации предложила семиуровневую модель , которой соответствует и программная структура (рис. 6).
Рис 6. Уровни управления и протоколы ЛВС
Рассмотрим функции, выполняемые каждым уровнем программного обеспечения.
1. Физический – осуществляет как соединения с физическим каналом, так и отсоединение, управление каналом, а также определяет скорость передачи данных и топологию сети.
2. Канальный – осуществляет обрамление передаваемых массивов информации вспомогательными символами и контроль передаваемых данных. В ЛВС передаваемая информация разбивается на несколько пакетов или кадров. Каждый пакет содержит адреса источника и места назначения, а также средства обнаружения ошибок.
3. Сетевой – определяет маршрут передачи информации между сетями (ПЭВМ), обеспечивает обработку ошибок, а также управление потоками данных. Основная задача сетевого уровня - маршрутизация данных (передача данных между сетями). Специальные устройства – маршрутизаторы (Router) определяют для, какой сети предназначено то или другое сообщение, и направляют эту посылку в заданную сеть. Для определения абонента внутри сети используется адрес узла (Node Address). Для определения пути передачи данных между сетями на маршрутизаторах строятся таблицы маршрутов (Routing Tables) , содержащие последовательность передачи данных через маршрутизаторы. Каждый маршрут содержит адрес конечной сети, адрес следующего маршрутизатора и стоимость передачи данных по этому маршруту. При оценке стоимости могут учитываться количество промежуточных маршрутизаторов, время, необходимое на передачу данных, денежная стоимость передачи данных по линии связи. Для построения таблиц маршрутов наиболее часто используют либо метод векторов либо статический метод . При выборе оптимального маршрута применяют динамические или статические методы. На сетевом уровне возможно применение одной из двух процедур передачи пакетов:
датаграмм – когда часть сообщения или пакет независимо доставляется адресату по различным маршрутам, определяемым сложившейся динамикой в сети. При этом каждый пакет включает в себя полный заголовок с адресом получателя. Процедуры управления передачей таких пакетов по сети называются датаграммной службой;
виртуальных соединений – когда установление маршрута передачи всего сообщения от отправителя до получателя осуществляется с помощью специального служебного пакета – запроса на соединение. В таком случае для этого пакета выбирается маршрут и, при положительном ответе получателя на соединение закрепляется для всего последующего трафика (потока сообщений в сети передачи данных) и получается номер соответствующего виртуального канала (соединения) для дальнейшего использования его другими пакетами того же сообщения. Пакеты, которые передаются по одному виртуальному каналу, не являются независимыми и поэтому включают сокращенный заголовок, включающий порядковый номер пакета, принадлежащему одному сообщению. Недостатками по сравнению с датаграммой являются сложность в реализации, увеличение накладных расходов, вызванных установлением и разъединением сообщений.
4. Транспортный – связывает нижние уровни (физический, канальный, сетевой) с верхними уровнями, которые реализуются программными средствами. Этот уровень разделяет средства формирования данных в сети от средств их передачи. Здесь осуществляется разделение информации по определенной длине и уточняется адрес назначения. Транспортный уровень позволяет мультиплексировать передаваемые сообщения или соединения. Мультиплексирование сообщений позволяет передавать сообщения одновременно по нескольким линиям связи, а мультиплексирование соединений – передает в одной посылке несколько сообщений для различных соединений.
5. Сеансовый – на данном уровне осуществляется управление сеансами связи между двумя взаимодействующими пользователями (определяет начало и окончание сеанса связи: нормальное или аварийное; определяет время, длительность и режим сеанса связи; определяет точки синхронизации для промежуточного контроля и восстановления при передаче данных; восстанавливает соединение после ошибок во время сеанса связи без потери данных).
6. Представительский – управляет представлением данных в необходимой для программы пользователя форме, генерацию и интерпретацию взаимодействия процессов, кодирование/декодирование данных, в том числе компрессию и декомпрессию данных. На рабочих станциях могут использоваться различные операционные системы: DOS, UNIX, OS/2. Каждая из них имеет свою файловую систему, свои форматы хранения и обработки данных. Задачей данного уровня является преобразование данных при передаче информации в формат, который используется в информационной системе. При приеме данных этот уровень представления данных выполняет обратное преобразование. Таким образом, появляется возможность организовать обмен данными между станциями, на которых используются различные операционные системы. Форматы представления данных могут различаться по следующим признакам:
Порядок следования битов и размерность символа в битах;
Порядок следования байтов;
Представление и кодировка символов;
Структура и синтаксис файлов.
Компрессия или упаковка данных сокращает время передачи данных. Кодирование передаваемой информации обеспечивает защиту ее от перехвата.
7. Прикладной – в его ведении находятся прикладные сетевые программы, обслуживающие файлы, а также выполнение вычислительных, информационно-поисковых работ, логических преобразований информации, передачи почтовых сообщений и т.п. Главная задача этого уровня – обеспечение удобного интерфейса для пользователя.
На разных уровнях обмен происходит различными единицами информации: битами, кадрами, пакетами, сеансовыми сообщениями, пользовательскими сообщениями.
Протоколы передачи данных
В различных сетях существуют различные протоколы обмена данными. Наибольшее распространение получила конкретная реализация методов доступа в сетях типа Ethernet, Arcnet и Token-Ring.
Метод доступа в сетях Ethernet
Этот метод доступа, разработанный фирмой Xerox в 1975 году, пользуется наибольшей популярностью. Он обеспечивает высокую скорость передачи данных и надежность.
Сообщение, отправляемое одной рабочей станцией, принимается одновременно всеми остальными. Сообщение включает в себя адрес станции назначения и адрес станции отправителя. Та станция, которой предназначено сообщение, принимает его, остальные игнорируют.
Метод доступа в сетях Ethernet является методом множественного доступа с прослушиванием несущей и разрешением коллизий (конфликтов) (CSMA/CD - Carrier Sense Multiple Access/Collision Detection)
Перед началом передачи рабочая станция определяет, свободен канал или занят. Если канал свободен, станция начинает передачу. Ethernet не исключает возможности одновременной передачи сообщений двумя или несколькими станциями. Аппаратура автоматически распознает такие конфликты, называемые коллизиями. После обнаружения конфликта станции задерживают передачу на некоторое время, затем передача возобновляется.
Реально конфликты приводят к уменьшению быстродействия сети только в том случае, если в сети работают не менее 80-100 станций.
Метод доступа в сетях Arcnet
Этот метод доступа разработан фирмой Datapoint Corp. Он также получил широкое распространение в основном благодаря тому, что оборудование Arcnet дешевле, чем оборудование Ethernet или Token-Ring. Технология Arcnet используется в локальных сетях с топологией “звезда”. Один из компьютеров создает специальный маркер (сообщение специального вида), который последовательно передается от одного компьютера к другому.
Если станция желает передать сообщение другой станции, она должна дождаться маркера и добавить к нему сообщение, дополненное адресом отправителя и адресом станции назначения. Когда пакет дойдет до станции назначения, сообщение будет “отцеплено” от маркера и передано станции.
Метод доступа в сетях Token-Ring
Технология совместного использования ресурсов между разными источниками (CORS, Cross-Origin Resource Sharing) определяет способ взаимодействия клиентских веб-приложений, загружаемых в один домен, с ресурсами другого домена. Поддержка технологии CORS сервисом позволяет собирать многофункциональные веб-приложения на стороне клиента и выборочно предоставлять доступ Cross-origin к вашим ресурсам сервиса.
В данном разделе предоставлена информация о технологии совместного использования ресурсов между разными источниками (CORS).
Каждая строка AllowedHeader
в правиле может содержать максимум один подстановочный знак «*». Например,
Элемент ExposeHeader
Каждый элемент ExposeHeader указывает заголовок в ответе, к которому пользователи смогут получить доступ из приложений (например, из объекта JavaScript XMLHttpRequest). Список типичных заголовков сервиса находится в разделе «Типовые заголовки запросов ».
Элемент MaxAgeSeconds
Элемент MaxAgeSeconds указывает время в секундах, на которое браузер может кешировать ответ для предполетного запроса, что определяется ресурсом, методом HTTP и источником.
Как сервис осуществляет оценку конфигурации CORS на бакете
Когда сервис получает предполетный запрос от браузера, он осуществляет оценку конфигурации CORS для бакета и использует первое правило CORSRule, которое совпадает с получаемым запросом браузера на разрешение запроса Cross-origin. Для того, чтобы правило совпадало с получаемым запросом, должны выполняться нижеследующие условия.
- Заголовок Origin запроса должен совпадать с элементом AllowedOrigin .
- Метод запроса (например, GET или PUT) или заголовок Access-Control-Request-Method в случае предполетного запроса OPTIONS должен быть одним из элементов AllowedMethod .
- Каждый заголовок, указанный в заголовке Access-Control-Request-Headers в предполетном запросе, должен совпадать с элементом AllowedHeader .
Professional позволяет совместно использовать практически все, что находится в сети - файлы и папки, принтеры и даже приложения. В этой лекции мы поговорим о том, как совместно пользоваться сетевыми ресурсами.Политики и списки управления доступом ACL применимы при разрешении технологии CORS на бакете.
Во-первых, мы охватим особенности совместного использования приложений, файлов и папок, жестких дисков и принтеров. Затем обсудим управление совместными ресурсами и, наконец, вернемся к вопросу сетевой безопасности и поговорим о специфике методов обеспечения защиты открытых сетевых ресурсов, будь то защита посредством управления разрешениями или административная работа с пользователями, имеющими доступ к ресурсам сети.
Представление о совместном использовании
В Windows XP Professional можно реализовать совместное использование файлов, папок, принтеров и других сетевых ресурсов. С этими ресурсами могут работать либо другие пользователи локального компьютера, либо пользователи, находящиеся в сети. В этом разделе дается объяснение того, как настроить совместное использование в Windows XP Professional -системе.
Сначала мы обсудим совместное использование папок и жестких дисков, затем обратимся к использованию принтеров, а в конце на примере приложения Windows Messenger обсудим совместное использование приложений.
Совместное использование папок и жестких дисков
Основное назначение сетей состоит в совместном использовании информации. Если бы не было возможности общего доступа к файлам и папкам, то не было бы и причин для создания сетей. Windows XP Professional разрешает совместное использование папок и жестких дисков несколькими способами. Реализовать совместное использование достаточно просто. То, каким образом ресурсы используются совместно, будет зависеть от настройки системы Windows XP Professional.
Совместное использование на уровне папок является базовым (исходным) уровнем, на котором вы можете осуществлять управление. Вы не можете реализовать совместное использование одного файла. Он должен быть перенесен или создан внутри папки, предназначенной для совместного использования.
Реализация совместного использования
Если необходимо ввести совместное использование файлов, то сделать это будет достаточно просто. Осуществите навигацию к нужной папке, щелкните на ней правой кнопкой мыши и выберите Properties (Свойства) в появившемся меню. Щелкните на вкладке Sharing (Общий доступ) и проведите настройку реквизитов. Настройки, которые вы выберете, зависят от нескольких факторов: во-первых, включение или отключение Simple File Sharing (Простой общий доступ к файлам) предоставляет разные возможности. Файловая система, которой вы пользуетесь - NTFS или FAT - также влияет на возможности совместного использования. Мы обсудим варианты этих настроек позже в лекции.
Для совместного использования ресурсов сети сначала надо инициировать File and Printer Sharing for Microsoft Networks (Служба доступа к файлам и принтерам сетей Microsoft) в сетевом диалоговом окне. Если вы не видите вкладку Sharing в диалоговом окне свойств папки, то, значит, этот сервис не подключен. Обычно этот сервис автоматически инсталлируется мастером установки сети (Network Setup Wizard). Если требуется его проинсталлировать, проделайте следующие шаги.
Примечание. File and Printer Sharing for Microsoft Networks (Службу доступа к файлам и принтерам сетей Microsoft) нужно инсталлировать только в сетях, состоящих из устройств одного ранга, представленных компьютерами, работающими в среде Windows.
- Щелкните на Start (Пуск), правой кнопкой мыши щелкните на My Network Places (Сетевое окружение), выберите Properties (Свойства), щелкните правой кнопкой мыши на Local Area Connection (Локальные сетевые подключения) и выберите Properties.
- Щелкните на вкладке General (Общие).
- Нажмите кнопку Install (Установить). Появится диалоговое окно Select Network Component Type (Выбор типа сетевого компонента).
- Выберите Service (Службы) и щелкните на кнопке Add (Добавить).
- Выберите File and Printer Sharing for Microsoft Networks (Служба доступа к файлам и принтерам сетей Microsoft) и нажмите ОК.
- Вы вернетесь в окно Local Area Connection и, возможно, появится запрос вставить компакт-диск Windows XP Professional.
- Нажмите на ОК для сохранения изменений.
Уровни доступа
Windows XP professional предлагает пять уровней доступа к файлам и папкам. Их полезно знать, чтобы настраивать реквизиты в соответствии с потребностями организации в совместном использовании ресурсов. Вот эти уровни.
- Уровень 1. Мои документы. Это уровень самых жестких ограничений. Единственным лицом, имеющим право читать эти документы, является их создатель.
- Уровень 2. Мои документы. Это уровень по умолчанию для локальных папок.
- Уровень 3. Файлы в открытых (для общего использования) документах доступны локальным пользователям.
- Уровень 4. Общие файлы в сети. На этом уровне все пользователи сети могут читать эти файлы.
- Уровень 5. Общие файлы в сети. На этом уровне все пользователи сети могут не только читать эти файлы, но и вносить в них записи.
Примечание. Файлы уровней 1, 2 и 3 доступны только для локально зарегистрированных пользователей.
В следующих параграфах особенности этих уровней рассматриваются более подробно. Для пояснения создания конфигураций этих уровней доступа процесс установления уровня безопасности показан на примере системы с подключенной опцией Simple File Sharing (Простой общий доступ к файлам).
Уровень 1. Этот уровень является самым строгим в плане защиты. На уровне 1 только владелец файла может читать и записывать в свой файл. Даже сетевой администратор не имеет доступа к таким файлам. Все подкаталоги, существующие в папке уровня 1, сохраняют тот же уровень секретности, что и родительская папка. Если владелец папки хочет, чтобы некоторые файлы и подкаталоги стали доступны для других лиц, то изменяет настройки безопасности.
Возможность создания папки уровня 1 доступна только для учетной записи пользователя и только в рамках его собственной папки My Documents (Мои документы). Для создания папки уровня 1 проделайте следующие шаги.
- Щелкните на окошке Make this folder private (Отменить общий доступ к этой папке).
- Нажмите ОК.
Уровень 2. На уровне 2 владелец файла и администратор имеют права на чтение и запись в файле или папке. В Windows XP Professional это является настройкой по умолчанию для каждого пользовательского файла в папке My Documents (Мои документы).
Для установки уровня 2 безопасности папки, ее подкаталогов и файлов проделайте следующие шаги.
- Щелкните правой кнопкой мыши на нужной папке и затем щелкните на Sharing and Security (Общий доступ и безопасность).
- Очистите флажки Make this folder private (Отменить общий доступ к этой папке) и Share this folder on the network (Открыть общий доступ к этой папке).
- Нажмите ОК.
Уровень 3. Уровень 3 позволяет совместно использовать файлы и папки пользователям, входящим в компьютер в рамках локальной сети. В зависимости от типа пользователя (за более подробной информацией о типах пользователей обратитесь к "Безопасность при работе в сети") он может (или не может) выполнять определенные действия с файлами уровня 3 в папке Shared Documents (Общие документы).
- Администраторы локальных компьютеров и опытные пользователи имеют полный доступ.
- Ограниченные пользователи имеют доступ только для чтения.
- Удаленные пользователи не имеют доступа к файлам уровня 3.
Установка разрешений уровня 3 требует перемещения желаемых папок и файлов в папку Shared Documents (Общие документы).
Уровень 4. На четвертом уровне файлы доступны для чтения всем удаленным пользователям. Локальные пользователи имеют доступ на чтение (это касается и учетных записей Гость), но не имеют права записи и модификации файлов. На этом уровне каждый имеющий доступ к сети может читать файлы.
Для создания разрешений уровня 4 для папки проделайте следующие шаги.
- Очистите окошко Allow network users to change my files (Разрешить изменение файлов по сети).
- Нажмите ОК.
Уровень 5. Наконец, уровень 5 является наиболее разрешенным уровнем с точки зрения безопасности файлов и папок. Любой пользователь сети имеет карт-бланш для доступа к файлам и папкам уровня 5. Так как каждый может читать, записывать или удалять файлы и папки, то такой уровень безопасности следует вводить только в закрытых, надежных и защищенных сетях. Для установки разрешений уровня 5 проделайте следующие шаги.
- Щелкните правой кнопкой мыши на папке и затем щелкните на Sharing and Security (Общий доступ и безопасность).
- Отметьте флажок Share this folder on the network (Открыть общий доступ к этой папке).
- Нажмите ОК.