Компьютерные сети

  • Вид работы:
    Учебное пособие
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    160,56 kb
  • Опубликовано:
    2012-01-20
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Компьютерные сети

Введение


История объединения компьютеров между собой почти столь же стара, как и история создания собственно компьютеров [1]. Еще на заре компьютерной эры пользователи ЭВМ поняли, что намного проще обмениваться данными между машинами по кабелю, чем применять перенос данных с помощью мобильных накопителей. Однако такая скорость передачи данных по мере роста объема памяти и быстродействия ЭВМ быстро оказалась слишком малой для практического применения, и десятки фирм включились в гонку создания специального аппаратного (сетевых плат) и программного обеспечения, причем скорость передачи данных достигла сотен мегабит в секунду. Каждая фирма предлагала свой стандарт передачи данных и собственное программное обеспечение, через несколько лет были выработаны общеупотребительные стандарты на сетевые протоколы (наборы правил и соглашений, в соответствие с которыми производится обмен данными по сети) передачи данных.

В настоящее время поддержка наиболее распространенных сетевых протоколов встраивается непосредственно в ОС (поддержка дополнительных протоколов устанавливается по желанию пользователя), пользователю предоставляются штатные средства поддержки сетевых функций (подключение к удаленной ЭВМ, обмен файлами по сети и др.) [2]. Вместе с тем возможности современных ОС позволяют программисту разрабатывать свои собственные приложения, пользуясь средствами встроенной в ОС сетевой поддержки.

Следующий этап развития программного обеспечения компьютерных сетей - создание распределенной системы (среды распределенных приложений) и соответственно распределенной ОС. Распределенную систему можно определить как систему, в которой существование нескольких автономных компьютеров является прозрачным (т.е. неощутимым) для пользователей [5]. Другими словами, одна ОС управляет несколькими сетевыми компьютерами и распределяет их ресурсы (процессорное время, оперативную и дисковую память и др.) между выполняемыми приложениями.

Например, Windows не является распределенной ОС - она может работать на многопроцессорном компьютере, планируя загрузку всех его процессоров, но требует от последних использования общей памяти.

Узким местом при практической реализации распределенной ОС является как теоретические (планирование рациональной загрузки процессоров различного типа при их числе, измеряемом сотнями и тысячами - трудноосуществимая задача), так и практические сложности реализации (скорость передачи данных по сети на много порядков ниже скорости обмена информацией процессоров с оперативной памятью в пределах одной ЭВМ).

Интересной разработкой в области создания сред распределенных вычислений является, например, представленный компаниями Compaq и Santa Cruz Operation программный продукт (фактически расширение ОС) Compaq ProLiant Clusters for SCO UnixWare, позволяющий объединять серверы в кластер (сообщество компьютеров) и управлять этим кластером как единым «виртуальным компьютером»; при этом в кластере отсутствует как таковой «главный» узел, а процессы могут мигрировать с одного компьютера на другой (нагрузка распределяется между узлами динамически).

При объединении компьютеров в сети остро встают вопросы несанкционированного доступа к информации и проблема компьютерных вирусов.

Основные понятия


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

Соответственно программное обеспечение компьютерных сетей - комплекс программ, поддерживающий функции обмена информацией между отдельно расположенными ЭВМ. В настоящее время программное обеспечение компьютерных сетей обычно является составной часть операционных систем.

Локальная вычислительная сеть (ЛВС) - система связи отдельно расположенных ЭВМ на относительно небольшом расстоянии (обычно в пределах помещении и/или этажа здания); обычно объединяет до нескольких десятков (чаще однотипных) компьютеров, физическая линия связи - двухпроводной кабель или коаксиальный кабель [3].

Корпоративная вычислительная сеть - сеть, работающая по протоколу TCP/IP и не обязательно подключенная к Internet, но использующая коммуникационные стандарты Internet’а и сервисные приложения, обеспечивающие доставку данных пользователям сети; эксплуатируется в пределах (крупной) организации.

Глобальная вычислительная сеть объединяет множество локальных сетей и сотни тысяч - миллионы разнотипных ЭВМ по всему миру, физическая линия связи - оптокабель или космическая радиолиния связи.

Рабочая группа (workgroup) - набор компьютеров, объединенных для удобства при просмотре сетевых ресурсов одним именем.

Домен (domain) - определенная администратором сети совокупность компьютеров, использующих общую базу данных и систему защиты; каждый домен имеет уникальное имя.

Узел (host) - подключенное к сети устройство (обычно компьютер), идентифицируемое собственным адресом.

Скорость передачи данных по компьютерной сети измеряется в битах в секунду (bps - bit per second) или бодах (boud).

Трафик (traffic) - поток сообщений в разделяемой среде передачи данных, часто используется для грубой оценки уровня использования передающей среды (тяжелый, средний, легкий трафик).

Серверная ЭВМ - компьютер (обычно обладающий высоким быстродействием и значительным объемом оперативной и дисковой памяти) и выполняющий запросы, поступающие с клиентских ЭВМ.

Клиентская ЭВМ - пользовательский компьютер (обычно обладающий ограниченными ресурсами), выдающий запросы для исполнения серверу.

Файл-сервер - выделенная ЭВМ, выполняющая функции хранения данных и программ, используемых пользователями на клиентских ЭВМ.

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

Протокол (коммуникационный) - набор правил и соглашений, согласно которому взаимодействуют два (или более) компьютеров.

Топология (topology) сети - физическая конфигурация машин в сети.

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

Маршрутизация - процесс определения пути доступа к объектам сети.

Пакет (датаграмма) - определенное количество байт, сгруппированное вместе и посылаемое одновременно (практически все сети коммуникаций передают данные небольшими частями - пакетами или датаграммами).- это распределенная информационная система мультимедиа, основанная на гипертексте. Информация хранится на множестве Web-серверов и пользователь получает к ней доступ при помощи программ просмотра или Web-браузеров. Взаимодействие между клиентом и сервером осуществляется при помощи протоколов HTTP или FTP.

Мультимедиа - это информация, включающая в себя не только текст, но и двух и трехмерную графику, звук и видео.

Гипертекст - это информация в WWW, представленная в виде Web-страниц, в которых содержатся перекрестные ссылки на другие документы в Internet’e.

Гиперссылки могут использоваться для навигации по тексту сайта как внутри документа, так и для связи с документами на других серверах. Называются они, соответственно, внутренними и внешними. В тексте ссылки обычно выделяются другим цветом текста, подчеркиванием, ими могут быть графические объекты, но во всех случаях при наведении на нее указателя мыши, он меняет форму.

Для воплощения всех этих идей был разработан формат представления документов для Web-браузеров HTML (Hyper Text Markup Language) - это язык гипертекстовой разметки.

Технологии сетевых многопользовательских приложений

«Файл-серверная» и «клиент-серверная» архитектуры


За последние годы применение ПК эволюционировало от централизованных интерактивных систем на базе крупных ПК к распределенной архитектуре «клиент-сервер». Это стало возможным с распространением LAN на основе ПК. В основе «клиент-серверной» архитектуры лежит распределенная модель вычисления. В самом общем случае под «клиентом» и «сервером» понимают два взаимодействующих процесса, один из которых является поставщиком некоторого сервиса для другого.

Сервер - логический процесс, который обеспечивает некоторый сервис по запросу от клиента. Обычно сервер не только выполняет запрос, но и управляет очередностью запросов, буферами обмена, извещает своих клиентов о выполнении запроса и т.д.

Клиент - процесс, который запрашивает обслуживание от сервера. Процесс не является клиентом по каким-то параметрам своей структуры, он является процессом по отношению к серверу.

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

В «клиент-серверной» системе программа сервера стартует первой и пассивно ожидает запросов от клиента и при получении обрабатывает их при помощи различных механизмов. Таким образом, в модели «клиент-сервер» различают запросы и ответы.


В данном случае сеть изображена в виде овала, при разговоре об аспектах сети будем раскрывать этот овал. Программирование в этой среде бывает весьма разнообразным вследствие разнообразных сетевых ОС (NOS - Network Operating System), которые объединяют ПК в ЛВС. Каждая такая NOS имеет свой собственный интерфейс прикладного программирования (API - Application Programming Interface) на высоком уровне и поддерживает различные интерфейсы прикладного программирования более низкого уровня для осуществления связи.

Сетевое приложение «файл-серверной» архитектуры отличается от предыдущей тем, где происходит обработка данных. Данные в виде одного или нескольких файлов размещаются на файловом сервере. Сервер принимает запросы от ПК в сети и передает им требуемые данные. Основная обработка данных происходит в процессе клиента. Сервер следит лишь за тем, чтобы не возникало конфликтов при одновременном обращении к файлам.

В «клиент-серверной» архитектуре сервер не только обеспечивает пересылку необходимой информации, но и берет на себя часть или всю обработку этих данных.

Недостатки «файл-серверной» архитектуры очевидны и вытекают из того, что данные хранятся в одном месте, а обрабатываются в другом. Это означает, что данные в больших количествах необходимо передавать по сети, а это приводит к большой нагрузке на сеть и, как следствие, к снижению производительности при увеличении количества одновременно работающих пользователей.

«Клиент-серверная» архитектура позволяет устранить эти недостатки путем распределения вычислительной нагрузки между клиентом и сервером. Именно это распределение и является достаточно сложной задачей при проектировании программного обеспечения сетевых вычислительных систем.

Основная задача клиентского приложения - это обеспечение интерфейса с пользователем, т.е. ввод данных и предоставление результатов в удобном для пользователя виде и управление сценариями работы приложения.

Основная задача серверного приложения - это обеспечение надежности, согласованности и защищенности данных, управление запросами клиентов, быстрая обработка запросов и предоставление ответов.


Сначала большую часть функций приложения выполнял клиент, и такая архитектура получила название «толстый клиент - тонкий сервер». Когда появилась возможность хранить на серверы исполняемые процедуры, то это привело к тенденции большую часть приложения хранить на сервере. Такое решение имело очевидные преимущества, например его легче поддерживать, так как изменения нужно вносить только в одном месте - на сервере. Но язык описания хранимых процедур не был достаточно гибким по сравнению с языками программирования клиентских приложений. Поэтому возникли трехзвенные и многозвенные архитектуры «клиент-сервер», сочетающие в себе достоинства всех перечисленных выше систем.

Структурирование сетевого ПО


Для упрощения структуры большинство сетей организуются в наборы уровней или слоев, каждый их которых возводится над предыдущим. Во всех сетях целью каждого такого уровня является предоставление сервиса для вышестоящих уровней. При этом от них скрываются детали предоставляемого сервиса. Фундаментальной идеей здесь является предоставление неким аппаратным или программным уровнем сервисов своим пользователям без раскрытия деталей своего внутреннего состояния и подробностей алгоритмов.


Между парой смежных уровней находится интерфейс, определяющий набор примитивных операций, предоставляемый нижним уровнем верхнему. При проектировании сети важной задачей является определение и реализация ясных интерфейсов между уровнями не зависимо от их физического исполнения. Например, при замене телефонных проводов спутниковым каналом связи требуется, чтобы новая реализация уровня выполняла те же функции и предоставляла тот же набор услуг, что и предыдущая.

Уровень N одного ПК поддерживает связь с уровнем N другого ПК. Правила и соглашения, используемые в данном общении, называются протоколом. По сути - это договоренность общающихся сторон о том, как происходит общение. Нарушение протокола в общении может затруднить его или сделать вообще невозможным. Хосты различного исполнения уровней - вполне нормальное явление.

Набор протоколов и уровней называется архитектурой сети. Интерфейсы не входит в архитектуру сети, так как не только находятся внутри ПК, но и могут быть разными в зависимости от исполнения уровней в каждом конкретном ПК. Необходимо лишь, чтобы они общались между собой по одному и тому же протоколу. Список всех протоколов для каждого из уровней сетевой архитектуры называется стеком протоколов.

Служба (или сервис) - это набор примитивов (или операций), которые более низкий уровень предоставляет более высокому. Служба описывает интерфейс между двумя уровнями, в котором нижний уровень является поставщиком сервиса, а верхний - его потребителем.

Существует 6 типов служб, каждая из которых характеризуется качеством обслуживания. Различают надежные и ненадежные службы.

Службы, ориентированные на соединение:

. Надежный поток сообщений. (Последовательность страниц)

. Надежный поток байт. (Удаленная регистрация)

. Ненадежное соединение. (Цифровая голосовая связь)

Службы без установления соединения:

. Ненадежная дейтограмма. (Рассылка рекламы)

. Дейтограмма с подтверждением. (Заказное письмо)

. Запрос - ответ. (Запрос к БД)

Надежная служба никогда не теряет данные. Надежные соединения бывают только двух типов 1 и 2. 1 отличается от 2 гарантией того, что два сообщения по 1Кб придут в том же виде, а не как одно сообщение размером 2Кб. Надежные службы обычно реализуется при помощи подтверждений прима информации, отсылаемых получателем на каждое принятое сообщение. Недостаток в том, что пересылка таких сообщений требует дополнительных накладных расходов и снижает пропускную способность сети.

Существуют системы, для которых задержки, связанные с передачей подтверждений, неприемлемы, или подтверждения вообще неактуальны. Тогда используют ненадежные соединения (3 и 4). Не все службы требуют установки соединения, так как установить его бывает иногда очень сложно, или вообще нежелательно. Ненадежные службы без установки соединения называются службами дейтограмм. Службу 5-го типа используют для пересылки коротких сообщений, когда желательно знать об их получении. Дейтограммы 6-го типа обычно используются в модели «клиент-сервер». Ненадежные службы получили такое большое распространение потому, что значительно увеличивают пропускную способность сети. Сеть на основе Ethernet не относится к «надежным» (подуровень управления доступом к среде, а не служба) средствам коммуникации. Пакеты при передаче могут искажаться, но решать эту проблему призваны протоколы более высоких уровней.

Итак, служба - это нечто, связанное с междууровневыми интерфейсами, а протоколы связаны с пакетами, передаваемыми между одноранговыми уровнями различных хостов.

Сетевые операционные системы


Сетевые операционные системы (Network Operating System -NOS) - это комплекс программ, обеспечивающих обработку, хранение и передачу данных в сети [32].

Сетевая операционная система выполняет функции прикладной платформы, предоставляет разнообразные виды сетевых служб и поддерживает работу прикладных процессов, выполняемых в абонентских системах. Сетевые операционные системы используют клиент серверную либо одноранговую архитектуру. Компоненты NOS располагаются на всех рабочих станциях, включенных в сеть. определяет взаимосвязанную группу протоколов верхних уровней, обеспечивающих выполнение основных функций сети. К ним, в первую очередь, относятся:

-       адресация объектов сети;

-       функционирование сетевых служб;

-       обеспечение безопасности данных;

-       управление сетью.

-       набор сетевых служб, которые предоставляет сеть;

-       возможность наращивания имен, определяющих хранимые данные и прикладные программы;

-       механизм рассредоточения ресурсов по сети;

-       способ модификации сети и сетевых служб;

-       надежность функционирования и быстродействие сети;

-       используемые или выбираемые физические средства соединения;

-       типы компьютеров, объединяемых в сеть, их операционные системы;

-       предлагаемые системы, обеспечивающие управление сетью;

-       используемые средства защиты данных;

-       совместимость с уже созданными прикладными процессами;

-       число серверов, которое может работать в сети;

-       перечень ретрансляционных систем, обеспечивающих сопряжение локальных сетей с различными территориальными сетями;

-       способ документирования работы сети, организация подсказок и поддержек.

Структура сетевой операционной системы

Сетевая операционная система составляет основу любой вычислительной сети. Каждый компьютер в сети автономен, поэтому под сетевой операционной системой в широком смысле понимается совокупность операционных систем отдельных компьютеров, взаимодействующих с целью обмена сообщениями и разделения ресурсов по единым правилам - протоколам. В узком смысле сетевая ОС - это операционная система отдельного компьютера, обеспечивающая ему возможность работать в сети.

В соответствии со структурой, приведенной на рисунке выше, в сетевой операционной системе отдельной машины можно выделить несколько частей.

1.      Средства управления локальными ресурсами компьютера: функции распределения оперативной памяти между процессами, планирования и диспетчеризации процессов, управления процессорами, управления периферийными устройствами и другие функции управления ресурсами локальных ОС.

2.      Средства предоставления собственных ресурсов и услуг в общее пользование - серверная часть ОС (сервер). Эти средства обеспечивают, например, блокировку файлов и записей, ведение справочников имен сетевых ресурсов; обработку запросов удаленного доступа к собственной файловой системе и базе данных; управление очередями запросов удаленных пользователей к своим периферийным устройствам.

.        Средства запроса доступа к удаленным ресурсам и услугам - клиентская часть ОС (редиректор). Эта часть выполняет распознавание и перенаправление в сеть запросов к удаленным ресурсам от приложений и пользователей. Клиентская часть также осуществляет прием ответов от серверов и преобразование их в локальный формат, так что для приложения выполнение локальных и удаленных запросов неразличимо.

.        Коммуникационные средства ОС, с помощью которых происходит обмен сообщениями в сети. Эта часть обеспечивает адресацию и буферизацию сообщений, выбор маршрута передачи сообщения по сети, надежность передачи и т.п., т. е. является средством транспортировки сообщений.

Клиентское программное обеспечение


Для работы с сетью на клиентских рабочих станциях должно быть установлено клиентское программное обеспечение. Это программное обеспечение обеспечивает доступ к ресурсам, расположенным на сетевом сервере. Тремя наиболее важными компонентами клиентского программного обеспечения являются редиректоры (redirector), распределители (designator) и имена UNC (UNC pathnames).[5]

Редиректоры

Редиректор - сетевое программное обеспечение, которое принимает запросы ввода/вывода для удаленных файлов, именованных каналов или почтовых слотов и затем переназначает их сетевым сервисам другого компьютера. Редиректор перехватывает все запросы, поступающие от приложений, и анализирует их.

Фактически существуют два типа редиректоров, используемых в сети:

-       клиентский редиректор (client redirector)

-       серверный редиректор (server redirector).

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

Распределители

Распределитель (designator) представляет собой часть программного обеспечения, управляющую присвоением букв накопителя (drive letter) как локальным, так и удаленным сетевым ресурсам или разделяемым дисководам, что помогает во взаимодействии с сетевыми ресурсами. Когда между сетевым ресурсом и буквой локального накопителя создана ассоциация, известная также как отображение дисковода (mapping a drive), распределитель отслеживает присвоение такой буквы дисковода сетевому ресурсу. Затем, когда пользователь или приложение получат доступ к диску, распределитель заменит букву дисковода на сетевой адрес ресурса, прежде чем запрос будет послан редиректору.

Имена UNC

Редиректор и распределитель являются не единственными методами, используемыми для доступа к сетевым ресурсам. Большинство современных сетевых операционных систем распознают имена UNC (Universal Naming Convention - Универсальное соглашение по наименованию). UNC представляют собой стандартный способ именования сетевых ресурсов. Эти имена имеют форму \\Имя_сервера\имя_ресурса. Способные работать с UNC приложения и утилиты командной строки используют имена UNC вместо отображения сетевых дисков.

Серверное программное обеспечение

Для того чтобы компьютер мог выступать в роли сетевого сервера необходимо установить серверную часть сетевой операционной системы, которая позволяет поддерживать ресурсы и распространять их среди сетевых клиентов. Важным вопросом для сетевых серверов является возможность ограничить доступ к сетевым ресурсам. Это называется сетевой защитой (network security). Она предоставляет средства управления над тем, к каким ресурсам могут получить доступ пользователи, степень этого доступа, а также, сколько пользователей смогут получить такой доступ одновременно. Этот контроль обеспечивает конфиденциальность и защиту и поддерживает эффективную сетевую среду.

В дополнение к обеспечению контроля над сетевыми ресурсами сервер выполняет следующие функции:

-       предоставляет проверку регистрационных имен (logon identification) для пользователей;

-       управляет пользователями и группами;

-       хранит инструменты сетевого администрирования для управления, контроля и аудита;

-       обеспечивает отказоустойчивость для защиты целостности сети.

Клиентское и серверное программное обеспечение

Некоторые из сетевых операционных систем, в том числе Windows NT, имеют программные компоненты, обеспечивающие компьютеру как клиентские, так и серверные возможности. Это позволяет компьютерам поддерживать и использовать сетевые ресурсы и преобладает в одноранговых сетях. В общем, этот тип сетевых операционных систем не так мощен и надежен, как законченные сетевые операционные системы. Главное преимущество комбинированной клиентско-серверной сетевой операционной системы заключается в том, что важные ресурсы, расположенные на отдельной рабочей станции, могут быть разделены с остальной частью сети. Недостаток состоит в том, что если рабочая станция поддерживает много активно используемых ресурсов, она испытывает серьезное падение производительности. Если такое происходит, то необходимо перенести эти ресурсы на сервер для увеличения общей производительности.

В зависимости от функций, возлагаемых на конкретный компьютер, в его операционной системе может отсутствовать либо клиентская, либо серверная части.

Если выдан запрос к ресурсу данного компьютера, то он переадресовывается локальной операционной системе. Если же это запрос к удаленному ресурсу, то он переправляется в клиентскую часть, где преобразуется из локальной формы в сетевой формат, и передается коммуникационным средствам. Серверная часть ОС компьютера 2 принимает запрос, преобразует его в локальную форму и передает для выполнения своей локальной ОС. После того, как результат получен, сервер обращается к транспортной подсистеме и направляет ответ клиенту, выдавшему запрос. Клиентская часть преобразует результат в соответствующий формат и адресует его тому приложению, которое выдало запрос.

Выбор сетевой операционной системы

При выборе сетевой операционной системы необходимо учитывать:

-       совместимость оборудования;

-       тип сетевого носителя;

-       размер сети;

-       сетевую топологию;

-       требования к серверу;

-       операционные системы на клиентах и серверах;

-       сетевая файловая система;

-       соглашения об именах в сети;

-       организация сетевых устройств хранения.

Одноранговые NOS и NOS с выделенными серверами

В зависимости от того как распределены функции между компьютерами сети, сетевые операционные системы, а следовательно, и сети делятся на два класса: одноранговые и сети с выделенными серверами.

Если компьютер предоставляет свои ресурсы другим пользователям сети, то он играет роль сервера. При этом компьютер, обращающийся к ресурсам другой машины, является клиентом. Компьютер, работающий в сети, может выполнять функции либо клиента, либо сервера, либо совмещать обе эти функции. На рис. приведены примеры структур одноранговых сетей и сетей с выделенными серверами.

Если выполнение каких-либо серверных функций является основным назначением компьютера, то такой компьютер называется выделенным сервером. В зависимости от того, какой ресурс сервера является разделяемым, он называется файл-сервером, факс-сервером, принт-сервером, сервером приложений, сервером БД, Web-сервером и т. д. На выделенных серверах устанавливается ОС для выполнения тех или иных серверных функций. Выделенный сервер не принято использовать в качестве компьютера для выполнения текущих задач, не связанных с его основным назначением, так как это может уменьшить производительность его работы как сервера.

В одноранговых сетях все компьютеры равны в правах доступа к ресурсам друг друга. Каждый пользователь может по своему желанию объявить какой-либо ресурс своего компьютера разделяемым, после чего другие пользователи могут его эксплуатировать. В таких сетях на всех компьютерах устанавливается одна и та же ОС, которая предоставляет всем компьютерам в сети потенциально равные возможности. Одноранговые сети могут быть построены, например, на базе ОС LANtastic, Personal Ware, Windows for Workgroup, Windows NT Workstation. Одноранговые сети проще в организации и эксплуатации. Но они применяются в основном для объединения небольших групп пользователей, не предъявляющих больших требований к объемам хранимой информации, ее защищенности от несанкционированного доступа и к скорости доступа.

При повышенных требованиях к этим характеристикам более подходящими являются сети с выделенными серверами, где сервер лучше решает задачу обслуживания пользователей своими ресурсами, так как его аппаратура и сетевая операционная система специально спроектированы для этой цели.

В сетях с выделенными серверами чаще всего используются сетевые операционные системы, в состав которых входит нескольких вариантов ОС, отличающихся возможностями серверных частей. Например, сетевая операционная система Novell NetWare имеет серверный вариант, оптимизированный для работы в качестве файл-сервера, а также варианты оболочек для рабочих станций с различными локальными ОС, причем эти оболочки выполняют исключительно функции клиента. Другим примером ОС, ориентированной на построение сети с выделенным сервером, является операционная система Windows NT. В отличие от NetWare, оба варианта данной сетевой ОС - Windows NT Server (для выделенного сервера) и Windows NT Workstation (для рабочей станции) - могут поддерживать функции и клиента и сервера. Но серверный вариант Windows NT имеет больше возможностей для предоставления ресурсов своего компьютера другим пользователям сети, так как может выполнять более широкий набор функций, поддерживает большее количество одновременных соединений с клиентами, реализует централизованное управление сетью, имеет более развитые средства защиты.

NOS для сетей масштаба предприятия

Сетевые операционные системы имеют разные свойства в зависимости от того, предназначены они для сетей масштаба рабочей группы (отдела), для сетей масштаба кампуса или для сетей масштаба предприятия.

Сети отделов используются небольшой группой сотрудников, решающих общие задачи. Главной целью сети отдела является разделение локальных ресурсов, таких как приложения, данные, лазерные принтеры и модемы. Сети отделов обычно не разделяются на подсети.

Сети кампусов соединяют несколько сетей отделов внутри отдельного здания или одной территории предприятия. Эти сети являются все еще локальными сетями, хотя и могут покрывать территорию в несколько квадратных километров. Сервисы такой сети обеспечивают взаимодействие между сетями отделов, доступ к базам данных предприятия, доступ к факс-серверам, высокоскоростным модемам и высокоскоростным принтерам.

Сети предприятия (корпоративные сети) объединяют все компьютеры всех территорий отдельного предприятия. Они могут покрывать город, регион или даже континент. В таких сетях пользователям предоставляется доступ к информации и приложениям, находящимся в других рабочих группах, отделах, подразделениях и штаб-квартирах корпорации.

Сети отделов

Главной задачей операционной системы, используемой в сети масштаба отдела, является организация разделения ресурсов, таких как приложения, данные, лазерные принтеры и, возможно, низкоскоростные модемы. Обычно сети отделов имеют один или два файловых сервера и не более чем 30 пользователей. Задачи управления на уровне отдела относительно просты. В задачи администратора входит добавление новых пользователей, устранение простых отказов, инсталляция новых узлов и установка новых версий программного обеспечения. Операционные системы сетей отделов хорошо отработаны и разнообразны, так же, как и сами сети отделов, уже давно применяющиеся и достаточно отлаженные. Такая сеть обычно использует одну или максимум две сетевые ОС. Чаще всего это сеть с выделенным сервером NetWare или Windows NT, или же одноранговая сеть, например сеть Windows for Workgroups.

Сети кампусов

Операционная система, работающая в сети кампуса, должна обеспечивать для сотрудников одних отделов доступ к некоторым файлам и ресурсам сетей других отделов. Услуги, предоставляемые ОС сетей кампусов, не ограничиваются простым разделением файлов и принтеров, а часто предоставляют доступ и к серверам других типов, например к факс-серверам и серверам высокоскоростных модемов. Важным сервисом, предоставляемым операционными системами данного класса, является доступ к корпоративным базам данных. Именно на уровне сети кампуса начинаются проблемы интеграции. В общем случае, отделы уже выбрали для себя типы компьютеров, сетевого оборудования и сетевых операционных систем. Очень часто сеть кампуса соединяет разнородные компьютерные системы, в то время как сети отделов используют однотипные компьютеры.

Корпоративные сети

Корпоративная сеть соединяет сети всех подразделений предприятия даже находящихся на значительных расстояниях. Корпоративные сети используют глобальные связи (WAN links) для соединения локальных сетей или отдельных компьютеров. Пользователям корпоративных сетей требуются все те приложения и услуги, которые имеются в сетях отделов и кампусов, плюс некоторые дополнительные приложения и услуги, например доступ к приложениям мейнфреймов и миникомпьютеров и к глобальным связям. Наряду с базовыми сервисами, связанными с разделением файлов и принтеров, сетевая ОС, которая разрабатывается для корпораций, должна поддерживать более широкий набор сервисов, в который обычно входят почтовая служба, средства коллективной работы, поддержка удаленных пользователей, факс-сервис, обработка голосовых сообщений, организация видеоконференций и др.

К признакам корпоративных ОС могут быть отнесены также следующие особенности.

1.      Поддержка приложений. В корпоративных сетях выполняются сложные приложения, требующие для выполнения большой вычислительной мощности. Приложения будут выполняться более эффективно, если их наиболее сложные в вычислительном отношении части перенести на специально предназначенный для этого мощный компьютер - сервер приложений.

2.      Справочная служба. Корпоративная ОС должна хранить информацию обо всех пользователях и ресурсах. Например, в Windows NT имеется по крайней мере пять различных типов справочных баз данных. Главный справочник домена (NT Domain Directory Service) хранит информацию о пользователях, которая используется при организации их логического входа в сеть. Данные о тех же пользователях могут содержаться и в другом справочнике, используемом электронной почтой Microsoft Mail. Еще три базы данных поддерживают разрешение низкоуровневых адресов: WINS устанавливает соответствие Netbios-имен IP-адресам, справочник DNS - сервер имен домена - оказывается полезным при подключении NT-сети к Internet, и, наконец, справочник протокола DHCP используется для автоматического назначения IP-адресов компьютерам сети. Наличие единой справочной службы для сетевой операционной системы - один из важнейших признаков ее корпоративности.

.        Безопасность. Особую важность для ОС корпоративной сети приобретают вопросы безопасности данных. Для защиты данных в корпоративных сетях наряду с различными аппаратными средствами используется средства защиты, предоставляемые операционной системой: избирательные или мандатные права доступа, сложные процедуры аутентификации пользователей, программная шифрация.

Сетевые ОС NetWare фирмы Novell


Назначение ОС NetWare

Файловый сервер в ОС NetWare является обычным ПК, сетевая ОС которого осуществляет управление работой ЛВС. Функции управления включают координацию рабочих станций и регулирование процесса разделения файлов и принтеров в ЛВС. Сетевые файлы всех рабочих станций хранятся на жестком диске файлового сервера, а не на дисках рабочих станций.

Сетевая операционная система NetWare допускает использование более двухсот типов сетевых адаптеров, более ста типов дисковых подсистем для хранения данных, а также устройств дублирования данных и файловых серверов.

ОС NetWare версий 3 и 4 предназначены для обеспечения доступа к общим ресурсам сети со стороны нескольких пользователей. В качестве таких ресурсов выступают файлы данных, принтеры, модемы, модули и т. д.

NetWare поддерживает возможность описания различных типов объектов: пользователей, групп, файловых серверов, очередей печати, серверов печати и т. д. Каждый из этих типов объектов имеет свой набор свойств. Например, объект-пользователь характеризуется следующими атрибутами: пароль, балансовый счет, список групп. Значением атрибута является та совокупность данных, которая содержится в полях этого атрибута. Системная база данных представляет собой множество файлов, хранящихся на томе SYS файлового сервера.

Структурная схема OC

Структурная схема OC приведена на рис. Ядро ОС NetWare загружается в ОП файлового сервера из-под DOS. В процессе функционирования ядро выполняет также роль диспетчера нитей (задач) операционной системы. Каждая нить или связана с каким-либо NLM-модулем (NetWare Loadable Module - загружаемый модуль NetWare), или представляет собой внутреннюю задачу ОС. NLM-модуль - это исполняемый файл ОС NetWare 3 и 4.

Системная база данных сетевых ресурсов является частью операционной системы и играет роль надежного хранилища системной информации:

-       об объектах;

-       о значениях этих свойств.

Сетевая файловая система

Одна из основных целей использования сетей - это обеспечение доступа всех пользователей к общим устройствам хранения информации, в основном, к жестким дискам. Организация файловой системы во многом схожа с организацией файловой системы DOS, но также имеет отличия. Как и в DOS, информация хранится в файлах. Файлы размещаются в древовидной структуре каталогов и подкаталогов. Корнем такого дерева, в отличие от DOS, является том. Тома располагаются на серверах. При наличии соответствующих прав пользователь может получить доступ к томам всех серверов, доступных в сети.

Войдя в сеть, можно создавать другие каталоги. Пользователи могут обмениваться файлами через эти каталоги и хранить в них свои собственные файлы. Однако прежде чем использовать созданные каталоги, необходимо, во-первых, описать пользователей в системе и, во-вторых, наделить их правами, необходимыми для доступа к каталогам.

Пользователь осуществляет доступ к файлам и каталогам NetWare с рабочей станции, на которой установлена своя операционная система, например DOS

 

Основные сетевые возможности

NetWare поддерживает следующие уровни протоколов по классификации OSI:

-       канальный, обрабатывающий заголовок кадра (драйвер сетевого адаптера);

-       сетевой (протоколы IPX, SPX, NetBIOS, TLI);

-       транспортный (протоколы SPX, NetBIOS, TLI, NCP);

-       сеансовый (протоколы NetBIOS, NCP);

-       прикладной (протоколы RIP, NLSP, SAP).

Протокол IPX (Internetwork Packet eXchange) обрабатывает пакеты, являющиеся основным средством, которое используется при передаче данных в сетях NetWare.

Протокол IPX определяет самый быстрый уровень передачи данных в сетях NetWare. Он относится к классу дейтаграммных протоколов типа "точка-точка" без установления соединения. Это означает, что вашей прикладной программе не требуется устанавливать специальное соединение с получателем. Впрочем, IPX имеет несколько недостатков:

-       не гарантирует доставку данных;

-       не гарантирует сохранения правильной последовательности при приёме пакетов;

-       не подавляет прием дублированных пакетов, т. е. обработка ошибок, возникающих при передаче пакетов IPX, возлагается на прикладную программу, принимающую пакеты.

Указанных недостатков не имеет протокол транспортного уровня SPX (Sequenced Packet eXchange), ориентированный на установление соединения. Протокол SPX обрабатывает пакет SPX. Оценивая протоколы IPX и SPX, можно сказать, что протокол IPX быстр, но SPX надёжен. В NetWare протокол NETBIOS является надстройкой над протоколом IPX и используется для организации обмена данными между рабочими станциями. Протокол NetBIOS реализован в виде резидентной программы NetBIOS.EXE, входящей в комплект поставки NetWare. Сравнивая методы адресации, используемые протоколами IPX/SPX и NetBIOS, можно заметить, что метод адресации протокола NetBIOS более удобен. Вы можете адресовать данные не только одной станции (как в IPX и SPX) или всем станциям сразу (как в IPX), но и группе станций, имеющих одинаковое групповое имя.

Защита информации

Средства защиты информации встроены в NetWare на базовых уровнях операционной системы, а не являются надстройкой в виде какого-либо приложения. Поскольку NetWare использует на файл-сервере особую структуру файлов, то пользователи не могут получить доступ к сетевым файлам, даже если они получат физический доступ к файл-серверу.

Операционные системы NetWare содержат механизмы защиты следующих уровней:

-       защита информации о пользователе;

-       защита паролем;

-       защита каталогов;

-       защита файлов;

-       межсетевая защита.

С точки зрения защиты ОС NetWare не делает различия между операционными системами рабочих станций. Станции, работающие под управлением DOS, Windows, OS/2, Macintosh и UnixWare, обслуживаются совершенно одинаково, и все функции защиты применяются ко всем операционным системам, которые могут использоваться в сети NetWare.

Семейство сетевых ОС Windows

В июле 1993 г. появились первые ОС семейства NT - Windows NT 3.1 и Windows NT Advanced Server 3.1. Выход версии 3.5, заметно снизившей требования, предъявляемые к технике, и включавшей ряд полезных функций, положил начало стремительному росту популярности ОС Windows. Сегодня она широко применяется самыми разными организациями, в том числе банками, заводами и индивидуальными пользователями. Операционная система Windows Server сертифицирована на соответствие уровню безопасности C-2. А также имеет встроенный криптографический интерфейс, позволяющий приложениям стандартным образом обращаться к системам криптозащиты разных производителей.

Структура Windows

Структурно Windows может быть представлена в виде двух частей: часть операционной системы, работающая в режиме пользователя, и часть операционной системы, работающая в режиме ядра (рис.).

Windows Server может выступать как:

файл-сервер;

сервер печати;

сервер приложений;

контроллер домена;

сервер удаленного доступа;

сервер Internet;

сервер обеспечения безопасности данных;

сервер резервирования данных;

сервер связи сетей;

сервер вспомогательных служб.

Сетевые средства

Средства сетевого взаимодействия Windows направлены на реализацию взаимодействия с существующими типами сетей, обеспечение возможности загрузки и выгрузки сетевого программного обеспечения, а также на поддержку распределенных приложений.

Windows с точки зрения реализации сетевых средств имеет следующие особенности:

-       встроенность на уровне драйверов, обеспечивает быстродействие;

-       открытость, предполагает легкость динамической загрузки/выгрузки и мультиплексируемость протоколов.

-       наличие сервиса вызова удаленных процедур (RPC - Remote Procedure Call), именованных конвейеров и почтовых ящиков для поддержки распределенных приложений.

-       Наличие дополнительных сетевых средств, позволяющих строить сети в масштабах корпорации: дополнительные средства безопасности, централизованное администрирование, отказоустойчивость (источник бесперебойного питания, зеркальные диски).

Состав Windows

Windows представляет из себя модульную операционную систему. Основными модулями являются:

-       Уровень аппаратных абстракций (Hardware Abstraction Layer - HAL);

-       Ядро (Kernel);

-       Исполняющая система (Windows NT executive);

-       Защитные подсистемы (Protected subsystems);

-       Подсистемы среды (Environment subsystems).

Рис. Структура Windows

 

Свойства Windows NT

Улучшенное авто распознавание аппаратуры, возможность ручного выбора и конфигурирования сетевых адаптеров, если автоматическое распознавание не дает положительного результата.

Встроенная совместимость с NetWare. Возможность выполнения роли шлюза к сетям NetWare, так что Windows-компьютеры могут получать доступ к файлам, принтерам и серверам приложений NetWare.

Встроенная поддержка TCP/IP. Новая высокопроизводительная реализация протоколов TCP/IP, которая обеспечивает простое, мощное решение для межсетевого взаимодействия. Помимо этого, имеются базовые утилиты, такие как ftp, tftp, telnet, команды rarp , arp, route и finger.

Значительные улучшения средств удаленного доступа RAS, включающие поддержку IPX/SPX и TCP/IP, использование стандартов Point to Point Protocol (PPP) и Serial Line IP (SLIP). Сервер RAS может теперь поддерживать до 256 соединений (вместо 64 в версии 3.1).

Полная поддержка хранения встроенных объектов OLE 2.x и поиска составных документов. К этим возможностям относятся связывание, встраивание, связывание со встроенными объектами, технологии "drag-and-drop" и OLE-Automation.

Надежность. Приложения, разработанные для MS Windows 3.x и MS-DOS, выполняются более надежно, так как каждое приложение теперь работает в своем адресном пространстве.

Поддержка различных ОС. Клиентами в сети с Windows Server могут являться компьютеры с различными операционными системами. Стандартно поддерживаются: MS-DOS, OS/2, UNIX, Macintosh, Windows NT Workstation. Программное обеспечение возможных клиентов включается в стандартную поставку Windows Server.

Взаимодействие с UNIX в Windows обеспечивается посредством поддержки общих стандартных сетевых протоколов (включая TCP/IP), стандартных способов распределенной обработки, стандартных файловых систем и совместного использования данных, а также благодаря простоте переноса приложений. Несмотря на то, что система Windows была разработана для поддержки работы по схеме клиент-сервер, для совместимости с UNIX-хостами встроена эмуляция терминалов. . В Windows имеется ряд средств для интеграции в системы, использующие протокол SNMP (Simple Network Management Protocol), что позволяет выполнять удаленное администрирование Windows с помощью, например, SUN Net Manager и HP Open View. Обеспечивается поддержка графических и текстовых терминалов.

Области использования Windows NT

Сетевая операционная система Windows NT Workstation может использоваться как клиент в сетях Windows NT Server, а также в сетях NetWare, UNIX. Она может быть рабочей станцией и в одноранговых сетях, выполняя одновременно функции и клиента, и сервера. А также Windows NT Workstation может применяться в качестве ОС автономного компьютера при необходимости обеспечения повышенной производительности, секретности, а также при реализации сложных графических приложений, например в системах автоматизированного проектирования.

Сетевая операционная система Windows NT Server может быть использована, прежде всего, как сервер в корпоративной сети. Здесь весьма полезной оказывается его возможность выполнять функции контроллера доменов, позволяя структурировать сеть и упрощать задачи администрирования и управления. Он используется также в качестве файл-сервера, принт-сервера, сервера приложений, сервера удаленного доступа и сервера связи (шлюза). Кроме того, Windows NT Server может быть использован как платформа для сложных сетевых приложений, особенно тех, которые построены с использованием технологии клиент-сервер.

Семейство ОС UNIX

Операционная система UNIX с самого своего возникновения была по своей сути сетевой операционной системой. С появлением многоуровневых сетевых протоколов TCP/IP компания AT&T реализовала механизм потоков (Streams), обеспечивающий гибкие и модульные возможности для реализации драйверов устройств и коммуникационных протоколов. Streams представляют собой связанный набор средств общего назначения, включающий системные вызовы и подпрограммы, а также ресурсы ядра. В совокупности эти средства обеспечивают стандартный интерфейс символьного ввода/вывода внутри ядра, а также между ядром и соответствующими драйверами устройств, предоставляя гибкие и развитые возможности разработки и реализации коммуникационных сервисов.

Большая часть коммуникационных средств ОС UNIX основывается на использовании протоколов стека TCP/IP. В UNIX System V Release 4 протокол TCP/IP реализован как набор потоковых модулей плюс дополнительный компонент TLI (Transport Level Interface - Интерфейс транспортного уровня). TLI является интерфейсом между прикладной программой и транспортным механизмом. Приложение, пользующееся интерфейсом TLI, получает возможность использовать TCP/IP.

Простейшая форма организации потокового интерфейса показана на рисунке

Рис. Простая форма потокового интерфейса

Одним из достоинств ОС UNIX является то, что система базируется на небольшом числе интуитивно ясных понятий.

С самого начала ОС UNIX замышлялась как интерактивная система. Другими словами, операционная система UNIX предназначена для терминальной работы. Чтобы начать работать, человек должен "войти" в систему, введя со свободного терминала свое учетное имя (account name) и, возможно, пароль (password). Человек, зарегистрированный в учетных файлах системы и, следовательно, имеющий учетное имя, называется зарегистрированным пользователем системы. Регистрацию новых пользователей обычно выполняет администратор системы. Пользователь не может изменить свое учетное имя, но может установить и/или изменить свой пароль.

Программы

ОС UNIX одновременно является операционной средой использования существующих прикладных программ и средой разработки новых приложений. Новые программы могут писаться на разных языках (Фортран, Паскаль, Модула, Ада и др.). Однако стандартным языком программирования в среде ОС UNIX является язык Си (который в последнее время все больше заменяется на Си++). Это объясняется тем, что, во-первых, сама система UNIX написана на языке Си, а, во-вторых, язык Си является одним из наиболее качественно стандартизованных языков.

Ядро ОС UNIX

Как и в любой другой многопользовательской операционной системе, обеспечивающей защиту пользователей друг от друга и защиту системных данных от любого непривилегированного пользователя, в ОС UNIX имеется защищенное ядро, которое управляет ресурсами компьютера и предоставляет пользователям базовый набор услуг.

1.      Инициализация системы - функция запуска и раскрутки. Ядро системы обеспечивает средство раскрутки (bootstrap), которое обеспечивает загрузку полного ядра в память компьютера и запускает ядро.

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

.        Управление памятью - функция отображения практически неограниченной виртуальной памяти процессов в физическую оперативную память компьютера, которая имеет ограниченные размеры. Соответствующий компонент ядра обеспечивает разделяемое использование одних и тех же областей оперативной памяти несколькими процессами с использованием внешней памяти.

.        Управление файлами - функция, реализующая абстракцию файловой системы, иерархии каталогов и файлов. Файловые системы ОС UNIX поддерживают несколько типов файлов. Некоторые файлы могут содержать данные в формате ASCII, другие будут соответствовать внешним устройствам. В файловой системе хранятся объектные файлы, выполняемые файлы и т.д. Файлы обычно хранятся на устройствах внешней памяти; доступ к ним обеспечивается средствами ядра. В мире UNIX существует несколько типов организации файловых систем. Современные варианты ОС UNIX одновременно поддерживают большинство типов файловых систем.

.        Коммуникационные средства - функция, обеспечивающая возможности обмена данными между процессами, выполняющимися внутри одного компьютера (IPC - Inter-Process Communications), между процессами, выполняющимися в разных узлах локальной или глобальной сети передачи данных, а также между процессами и драйверами внешних устройств.

.        Программный интерфейс - функция, обеспечивающая доступ к возможностям ядра со стороны пользовательских процессов на основе механизма системных вызовов, оформленных в виде библиотеки функций.

 

Файловая система


Понятие файла является одним из наиболее важных для ОС UNIX. Все файлы, с которыми могут манипулировать пользователи, располагаются в файловой системе, представляющей собой дерево, промежуточные вершины которого соответствуют каталогам, а листья - файлам и пустым каталогам. Реально на каждом логическом диске (разделе физического дискового пакета) располагается отдельная иерархия каталогов и файлов.

Каждый каталог и файл файловой системы имеет уникальное полное имя (в ОС UNIX это имя принято называть full pathname - имя, задающее полный путь, поскольку оно действительно задает полный путь от корня файловой системы через цепочку каталогов к соответствующему каталогу или файлу; мы будем использовать термин "полное имя", поскольку для pathname отсутствует благозвучный русский аналог). Каталог, являющийся корнем файловой системы (корневой каталог), в любой файловой системе имеет предопределенное имя "/" (слэш).

Принципы защиты

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

 

Идентификаторы пользователя и группы пользователей

При входе пользователя в систему программа login проверяет, что пользователь зарегистрирован в системе и знает правильный пароль (если он установлен), образует новый процесс и запускает в нем требуемый для данного пользователя shell. Но перед этим login устанавливает для вновь созданного процесса идентификаторы пользователя и группы, используя для этого информацию, хранящуюся в файлах /etc/passwd и /etc/group. После того, как с процессом связаны идентификаторы пользователя и группы, для этого процесса начинают действовать ограничения для доступа к файлам. Процесс может получить доступ к файлу или выполнить его (если файл содержит выполняемую программу) только в том случае, если хранящиеся при файле ограничения доступа позволяют это сделать. Связанные с процессом идентификаторы передаются создаваемым им процессам, распространяя на них те же ограничения. Однако в некоторых случаях процесс может изменить свои права с помощью системных вызовов setuid и setgid, а иногда система может изменить права доступа процесса автоматически.

 

Защита файлов

компьютерный сеть приложение программный доменный

Как и принято, в многопользовательской операционной системе, в UNIX поддерживается единообразный механизм контроля доступа к файлам и справочникам файловой системы. Любой процесс может получить доступ к некоторому файлу в том и только в том случае, если права доступа, описанные при файле, соответствуют возможностям данного процесса.

Защита файлов от несанкционированного доступа в ОС UNIX основывается на трех фактах. Во-первых, с любым процессом, создающим файл (или справочник), ассоциирован некоторый уникальный в системе идентификатор пользователя (UID - User Identifier), который в дальнейшем можно трактовать как идентификатор владельца вновь созданного файла. Во-вторых, с каждый процессом, пытающимся получить некоторый доступ к файлу, связана пара идентификаторов - текущие идентификаторы пользователя и его группы. В-третьих, каждому файлу однозначно соответствует его описатель - i-узел.

 

Обзор Системы Linux


Любая UNIX-подобная операционная система состоит из ядра и некоторых системных программ. Также существуют некоторые прикладные программы для выполнения какой-либо задачи.

Ядро является сердцем операционной системы. Оно размещает файлы на диске, запускает программы и переключает процессор и другое оборудование между ними для обеспечения мультизадачности, распределяет память и другие ресурсы между процессами, обеспечивает обмен пакетами в сети и т.п. Ядро само по себе выполняет только маленькую часть общей работы, но оно предоставляет средства, обеспечивающие выполнение основных функций. Оно также предотвращает возможность прямого доступа к аппаратным средствам, предоставляя специальные средства для обращения к периферии. Таким образом, ядро позволяет контролировать использование аппаратных средств различными процессами и обеспечивать некоторую защиту пользователей друг от друга.

Системные программы используют средства, предоставляемые ядром для обеспечения выполнения различных функций операционной системы. Системные и все остальные программы выполняются на поверхности ядра, в так называемом пользовательском режиме. Существует некоторая разница между системными и прикладными программами. Прикладные программы предназначены для выполнения какой-либо определенной задачи, в то время как системные программы используются для поддержания работы системы. Текстовый процессор является прикладной программой, а программа telnet - системной, хотя зачастую граница между ними довольно смутная.

Довольно часто операционная система содержит компиляторы и соответствующие им библиотеки, хотя не обязательно все языки программирования должны быть частью операционной системы. Документация, а иногда даже игры, могут являться ее частью. Обычно состав операционной системы определяется содержимым установочного диска или ленты, хотя дело обстоит несколько сложнее, так как различные части операционной системы разбросаны по разным FTP серверам во всем мире.

 

Графический интерфейс пользователя


Как в системе UNIX, так и в Linux, пользовательский интерфейс не встраивается в ядро системы. Вместо этого он представляется программами пользовательского уровня. Это применяется как к текстовым, так и к графическим оболочкам.

Такой стандарт делает систему более гибкой, хотя и имеет свои недостатки. Например, позволяет создавать новые интерфейсы для программ.

Первоначально используемой с системой Linux графической оболочкой была система X Window System (сокращенно X). Она не реализует пользовательский интерфейс, а только оконную систему, т. е. средства, с помощью которых может быть реализован графический интерфейс. Три наиболее популярных версии графических интерфейсов на основе X - это Athena, Motif и Open Look.

 

Программное обеспечение для работы в интернет


Начиная с первой половины 1990 годов для работы с Интернет, и, прежде всего, со Всемирной Паутиной, создаются специальные программы-браузеры (от английского "browse" - просмотр). В российской практике название "браузер" закрепилось достаточно прочно, хотя в некоторых случаях употребляется и прямой перевод на русский язык - "программа-просмотрщик" или "обозреватель".

История браузеров берет свое начало с программы Lynx. Это был текстовой браузер, не способный работать с графикой и тем более с аудио- и видеоприложениями. Эра графических браузеров была открыта с созданием браузера Mosaic, который впервые позволил пользователям увидеть красочный мир Всемирной паутины. Сегодня в мире существует не менее десятка различных браузеров. К наиболее распространенным относятся производимый компанией Microsoft Internet Explorer, Opera (компания Opera Software ASA), Mozilla (создается на основе открытой лицензии), Konqueror (KDE Project), Netscape Navigator (компания Netscape/AOL). Помимо браузеров, каждый из которых использует оригинальное программное ядро, существует множество программных надстроек над браузерами, которые добавляют в них некоторые полезные функции.

Все браузеры имеют свои достоинства и недостатки, которые складываются из скорости работы, способности открывать те или иные приложения, соответствия требованиям безопасности и множества других параметров. Конкуренция заставляет производителей постоянно совершенствовать свои продукты, добиваясь повышения потребительских свойств. Лидеры в постоянной гонке браузеров периодически сменяют друг друга и подчас безоговорочные законодатели мод постепенно переходят в разряд аутсайдеров. Так, например, Netscape Navigator, единолично лидировавший в 1994 - 1997 годах, в начале 2000 годов практически полностью уступил свои позиции продукту Microsoft, который, в свою очередь, начинает испытывать давление со стороны Opera и Mozilla. Естественно на популярность браузеров накладывает отпечаток и распространенность в мире тех или иных операционных систем. Так, популярность Windows расширяет число поклонников Internet Explorer, а увеличение доли различных вариантов Unix - число пользователей Mozilla, Netscape или Konqueror. При этом качественные показатели программных продуктов не всегда играют ключевую роль.

Всем современным браузерам свойственна простота интерфейса в сочетании с большими возможностями, которые они предоставляют пользователям. Программы снабжены множеством сервисных функций, как, например, способность делать закладки на важные страницы, одновременно работать сразу с несколькими различными источниками, отсылать понравившиеся страницы по электронной почте, сохранять приглянувшиеся файлы на своем компьютере.

Освоение работы с браузерами - сугубо прикладная задача и может быть реализована непосредственно на месте, с учетом выбранного программного решения. Существует огромное число источников, помогающих освоить все типы браузеров. Однако при работе в Сети с использованием любых браузеров стоит постоянно помнить о мерах безопасности. Появление первых компьютерных вирусов, распространяемых через Интернет, датируется 1991 годом. Прошедшее с той поры время было потрачено создателями вирусов отнюдь не впустую и сегодня именно Интернет является основным каналом распространения вредоносных программ.

По этой причине при работе в Сети необходимо неукоснительно следовать ряду несложных правил, которые позволят сберечь данные на собственном компьютере пользователя. К числу наиболее распространенных требований относятся следующие:

·              Обязательная установка антивирусной программы, контролирующей содержание входящих писем и загружаемых web-страниц. Такая программа должна систематически обновляться, иначе эффективность ее работы снижается.

·              Срочное удаление писем с любыми неизвестными приложениями. Открывать такие письма, а тем более сами приложения, ни в коем случае нельзя. Даже если письмо пришло со знакомого адреса и содержит некий приветственный текст, следует запросить корреспондента - посылалось ли такое письмо и не является ли приложение вирусом.

·              Все приложения, пришедшие с письменными подтверждениями от корреспондентов, лучше сохранять на диске и подвергать дополнительной проверке с помощью антивирусной программы.

·              Периодически производить полную антивирусную проверку собственного компьютера.

Помимо браузеров, для работы в Интернет применяются и ряд других программ, предназначенных для реализации частных задач. Существуют отдельные программы для работы с электронной почтой, FTP-клиенты, осуществляющие загрузку созданных или обновленных страниц на web-сайт, программы, предназначенные для докачивания программ из Сети при обрыве связи и т.д.

Система адресации в интернет


Интернет в целом и, в частности, Всемирная Паутина (World Wide Web) имеют стройную систему адресации, обеспечивающую точную идентификацию каждого входящего в Сеть узла путем присвоения ему оригинального адреса, имеющего числовой вид. Подобный код, называемый IP-адресом, выглядит как 195.218.218.38 или 193.124.148.65, что позволяет обозначить все параметры, начиная от страны и заканчивая персональным компьютером каждого пользователя.

Однако большую известность имеет DNS (Domain Name System - система доменных имен). Ее задача - обеспечить уникальность каждого адреса в Сети, без необходимости запоминания чисел. Именно сервер DNS производит преобразование символьных (буквенных) адресов в числовые. Система образования доменных имен также логична и проста. Адрес любого web-сервера начинается с аббревиатуры http, обозначающей вид протокола передаваемых данных, в данном случае это HyperText Transmission Protocol (Протокол передачи гипертекста). Далее следуют двоеточие, две косые черты и латинские буквы www, после которых ставится точка. Затем идет конкретный адрес, содержащий название учреждения, персоны или аббревиатуру и, через точку, - указание на организационную или географическую принадлежность объекта. Организационная принадлежность, указываемая преимущественно для американских серверов, обозначается тремя символами, интуитивно понятными знающим английский язык: gov - правительственные, edu - образовательные, com - коммерческие, org - неправительственные и некоммерческие учреждения, mil - военные, net - сами сети. Географическая принадлежность выражается двумя символами: .ru - Россия, .uk - Великобритания, .ca - Канада, .nl - Нидерланды и т.д. Так, например, адрес web-сервера Библиотеки Конгресса США - <http://www.loc.gov>, Гарвардского университета - <http://www.harvard.edu>, автомобильной корпорации "Форд" - <http://www.ford.com>, Российской Академии наук (Russian Academy of Science) - <http://www.ras.ru>, Российской Государственной библиотеки - <http://www.rsl.ru>. Ряд стран, в числе которых Австралия и Япония, используют одновременно как географический, так и организационный код. Например, адрес технологического университета в Сиднее (University of Technology, Sidney) будет иметь вид <http://www.uts.edu.au>, а сайт японской корпорации Sony - <http://www.sony.co.jp>. С конца 90-х годов в самих США, наряду с трехсимвольными доменами первого уровня, стали широко применяться двухуровневые домены, сформированные по географическому принципу. В подобных доменных именах указывается как страна - us, так и конкретный штат - fl - Флорида, ca - Калифорния, md - Мэриленд. За этим двухступенчатым адресом следует стандартное указание объекта. Например, <http://www.ci.gulfport.fl.us> - официальный сайт городка Галфорт во Флориде, <http://www.ci.san-leandro.ca.us> - сайт города Сан Леонардо в Калифорнии.

В течении всех 90-х годов описанная система имен оставалась неизменной. Но к началу нынешнего века гигантские темпы развития Интернет привели к тому, что адресное пространство в рамках описанной системы было практически исчерпано. Особо "тесно" стало в доменах .com, .net и .org, в которых была разрешена регистрация не только американских, но любых других фирменных или персональных сайтов представителей любой страны мира. С целью разгрузить данные домены Корпорация по распределению в Интернет доменных имен и IP-номеров (Internet Corporation for Assigned Names and Numbers - ICANN) дополнила существующую сетку новыми доменами первого уровня. В их число вошли: .biz, .info, .pro, .aero, .coop, .museum, .name. Распределение этих имен было произведено следующим образом:

·              .biz - коммерческие компании и проекты;

·              .info - учреждения, для которых информационная деятельность является ведущей (библиотеки, средства массовой информации);

·              .pro - сайты сертифицированных профессионалов таких областей деятельности как врачи, юристы, бухгалтеры, а также представители других профессий, в которых персональный аспект имеет ключевое значение (pro от слов profession, professional);

·              .aero - компании и персоны, непосредственно связанные с авиацией;

·              .coop - корпорации, использующие совместный капитал (от слова cooperative);

·              .museum - только музеи, архивы, выставки;

·              .name - персональные сайты, состоящие, как правило, из двух частей: имени и фамилии: www.bruce.edmonds.name.

Помимо деятельности ICANN, весьма своеобразную работу по расширению адресного пространства Интернет провели некоторые частные компании. Их действия выразились в перекупке доменных имен у малых стран. Подобным образом в частное использование отошли домены .cc - Кокосовые острова, .tv - Тувалу, .ws - Самоа, .bz - Белиз, .nu - Ниуи. Сайты в этих доменах ныне используются любым желающим, независимо от страны или вида деятельности.

Распределением адресного пространства в пределах каждого домена, выделенного по географическому признаку, занимаются уполномоченные национальные агентства. В России эта функция возложена на Российский научно-исследовательский институт развития общественных сетей - РосНИИРОС (<http://www.ripn.net>). Именно в нем производится регистрация всех доменных имен второго уровня, стоящих за .ru. Там же находится и база данных, позволяющая установить, кому принадлежит тот или иной домен в российском сегменте Сети. Часто встречающиеся доменные имена третьего уровня (например, shuya2002.nm.ru) не подлежат регистрации. Любой владелец доменного имени второго уровня вправе образовать любое число подобных сайтов на своем сервере.

Система доменных имен, однако, являет лишь основу системы адресации. Каждый размещенный в Интернет документ имеет собственный адрес, обозначаемый как URL (Uniform Resource Locator) - единый указатель ресурса. URL, помимо указания доменного имени, включает также и указание пути к конкретной странице. Сайты, в большинстве своем, имеют весьма разветвленную иерархическую структуру, каркас которой составляют многочисленные директории, разделяемые косыми чертами - "/". Поэтому адрес конкретного документа, как правило, имеет вид, подобный приведенному документу с сервера ГПНТБ России: <http://www.gpntb.ru/win/inter-events/crimea2003/conferr.htm> В данном случае http://www.gpntb.ru - указание сайта, win/inter-events/crimea2003 - указание пути к файлу (фактически - перечень директорий), conferr.htm - имя конкретного файла. Следует помнить, что при вводе адреса вручную ошибка даже в одном символе критична. По этой причине не рекомендуется переносить (записывать) сложные адреса на бумаге и затем вводить их вручную с клавиатуры - вероятность ошибки в этом случае очень велика. При необходимости сохранить сложный адрес имеет смысл произвести его копирование непосредственно из адресной строки в текстовой файл, а при необходимости обращения к документу - произвести обратный процесс: копирование из текстового файла в адресную строку программы, обеспечивающей работу с Интернет.

Назначение службы доменных имен DNS

Из всех многочисленных сетевых служб, работающих на прикладном уровне и обрабатывающие сетевые запросы клиентов, существует одна без которой и всем остальным работать очень тяжело, если вообще возможно. Эта служба называется DNS (Domain Name Service - служба доменных имен).

Если посмотреть на технологию маршрутизации, то можно увидеть, что структура сети с точки зрения IP-адресов строго подчиняется топологии: если несколько компьютеров объединены в единую локальную сеть, то у них будет одинаковый адрес сети, а если компьютеры находятся в разных локальных сетях, то у них будут различающиеся IP-адреса в части адреса сети. Если какая-нибудь организация сначала получила десять адресов из диапазона, а затем ей оказалось этого мало и она получила ещё сто, то, тем не менее, эти два диапазона IP-адресов вполне могут быть совершенно разными, поскольку они отражают не тот факт, какая конкретная организация ими владеет, а тот факт, какая "часть" интернета ими занята, т.е. топологию.

Это очень неудобно с социальной точки зрения, так как мы не можем без дополнительной информации ответить на вопрос о том, чья же сеть перед нами, что это за компьютеры, и так далее. Другая проблема состоит в том, что человек довольно тяжело запоминает числа.

Представьте себе, если бы мы набирали в браузере вместо имен сайтов четырехбайтные IP-адреса. Это крайне неудобно. Поэтому хочется решить сразу две задачи: присвоить всем компьютерам имена, чтобы идентифицировать их ими, и так составить эти имена, чтобы отражали не топологическую структуру интернета, а административную, то есть чтобы по имени компьютера было понятно, какой организации он принадлежит. Более того, было бы естественно, если бы сама процедура выдачи этих имён должна подчиняться административной структуре интернета.

Задача именования всех компьютеров в интернете сложнее, чем задача их перенумерации. Сложнее потому, что в отличии от перенумерации административная структура никак не подчиняется физическим аспектам сети. Соответственно, пытаться создавать централизованную базу всех имён всех компьютеров в интернете, как было на заре возникновения интернета, - это шаг в заведомо неверном направлении, так как это очень сложно, и учитывая, что интернет испытывает сбои, такая база никогда не будет актуальна - там будут устаревшие части и не будет вновь появившихся, к тому же нагрузка на эту базу будет слишком высокой. Поэтому возникла идея устроить не только процесс именования, но и процесс раздачи имён не с помощью единого хранилища, а в виде древовидно организованного распределенного хранилища.

Необходимо подчеркнуть, что все подключения по-прежнему осуществляются по IP-адресу, а служба доменных имен - это всего лишь надстройка для удобства, хотя и очень полезная, но в теории не необходимая. Поэтому прежде чем произойдет обмен данными между машинами, если в качестве адреса машины указанно доменное имя, то необходимо преобразовать это имя в IP-адрес и затем соединиться.

История возникновения DNS

Важное добавление: соответствие имени и ip-адреса. Во времена, когда адресов в интернете было где-то около 15, существовал файл под названием /etc/hosts, который содержал базу данных по всем именам этих адресов. Его формат очень простой - IP-адрес и имена, ему соответствующие (файл это используется и сейчас, но обычно хранит только имена самого компьютера).

Идея состоит в том, что даже когда компьютеров всего несколько десятков, может так случиться, что один компьютер будет иметь несколько имен. Почему? Потому что он может выступать в нескольких ипостасях - с одной стороны это компьютер, принадлежащий какой-либо организации, а с другой стороны, к примеру - компьютер, участвующий в таком-то проекте. И соответственно, если мы хотим подключиться к этой организации, мы вспомним, что его имя связано с именем организации, а если мы хотим подключиться к проекту - что его имя связанно с именем проекта. В данном случае мы видим, что имена устроены весьма примитивно. К существующей схеме пришли не от хорошей жизни. Когда компьютеров стало очень много, то:

• во-первых, оказалось, что администраторы сетей почему-то хотят сами именовать свои компьютеры;

• во-вторых - администраторы всех компьютеров на свете почему-то не хотят скачивать постоянно /etc/hosts из центрального хранилища, предпочитая писать /etc/hosts собственноручно, и он, естественно, не совпадает у всех компьютеров в интернете.

В какой-то момент стало очевидным то, что файлом /etc/hosts дело ограничиться не может и что надо создать некую систему, которая сама преобразовывала строковое имя в числовой адрес и обратно. Но если общего файла не существует, то надо использовать некую программу с этими функциями. А тогда появилась идея: поскольку администраторы сами пишут /etc/hosts, то пусть они и дальше сами раздают имена компьютерам в своей области владения, т.е.: ты администрируешь какие-то компьютеры - значит, раздать им имена - тоже твоя обязанность. Таким образом, решается задача - преобразования доменных имен в адреса и обратно.

Решение задачи состоит в том, что у каждого системного администратора есть свой файл преобразования хостов и IP-адресов. Точнее не файл, а специальная таблица (ее вид зависит от используемого DNS-сервера), распределенная по вышеизложенной схеме.

 

Организация системы доменных имен


Мировая система доменных имен организована следующим образом: существует несколько корневых серверов, которые ни в коем случае не знают все имена всех компьютеров в сети (и, более того, не обязаны этого знать). Вместо этого они содержат информацию о так называемых зонах DNS, состоящих из одного имени. Например, существуют зоны ru, com, info, de и так далее. Во-первых, они знают о том, какие имена первого уровня существуют в принципе, поскольку их относительно немного. Недавно их было совсем мало - в старых справочниках по интернету указывались только com, net, org, edu, gov и еще несколько зон, связанных с государствами, по двухбуквенным кодам. В какой-то момент было принято решение сильно расширить диапазон, а недавно приняли решение, что для записи имен зон будет использоваться кодировка юникод, что позволит создать имена зон на национальных алфавитах.

Итак, корневые DNS-сервера знают о всех существующих зонах, то есть о том, какие вообще бывают окончания у доменных имен. Помимо этого, они также знают адреса серверов, обладающих информацией о содержимом этих зон - т.е. о компьютерах, имена которых кончаются на окончание зоны. Указанные сервера называются серверами имен или NS-серверами (nameservers). Корневые сервера выдают ответ на вопрос довольно простого свойства - во-первых, существует ли в принципе такое имя (проверяя окончание), и, если оно существует, то где находится сервер (точнее, серверы) имен, знающие про имена с такими окончаниями.

Если посмотреть в словаре слово домен, мы узнаем, что оно появилось очень давно, и означает оно область владений феодального вассала. Феодальная структура была устроена пирамидально и самое главное - по принципу (соблюденному и в DNS) "вассал моего вассала - не мой вассал". Т.е. сервер отвечает за своих непосредственных подчиненных, и не отвечает за прямых подчиненных, которые не являются непосредственными.

Рассмотрим доменное имя cs.msu.ru. Сервер, который отвечает за зону ru, отвечает только за сервера имен тех хостов, которые имеют двусложные имена, оканчивающиеся на "ru" (www.ru, msu.ru и т.д). А если в имени больше составляющих, то сервер имен зоны ".ru" не обязан знать ip-адрес сервера имен хоста, хотя он может и хранить его в силу разных причин.

Но он обязан знать адрес сервера имен хоста msu.ru. Дальше запрашивается сервер имен msu.ru, а он уже обязан ответить, кто такой cmc.msu.ru либо сообщить его сервер имен, и так далее. В итоге мы получим в ответ либо ip-адрес, либо сообщение о том, что такого домена нет.

По сути, мы описали иерархическую распределённую базу данных.

Производительность и надежность системы доменных имен

В описанном процессе преобразования доменного имени в IP-адрес есть одна проблема: неужели, каждый раз, когда нам понадобится, находясь в каком-то другом домене, зайти на факультетский почтовой сервер, потребуется запрашивать корневой сервер? Тогда зачем все это было придумано, ведь число запросов на корневые сервера будет по прежнему огромно?

Поэтому для того, чтобы эту процедуру сделать более эффективной, есть три идеи, которые сильно облегчают нагрузку.

. Каждая таблица с записью соответствия IP-адреса доменному имени содержит в себе информацию о том, в течение какого времени эта таблица, во-первых, действительна, а во-вторых, может не меняться, то есть ее время жизни и задержка на изменение.

Таким образом, если мы один раз выяснили, что имени cs.msu.ru соответствует некий адрес, то в течение времени задержки на изменение - т.е. времени, в течении которого эта запись гарантированно не будет меняться - мы можем эту запись поместить в кеш доменных имен и не обращаться за ним к серверам имен в дальнейшем. Каждая такая таблица имеет свое время жизни (около недели), и время, в течение которого содержимое считается актуальным. Это сильно снижает нагрузку, поскольку в первый раз происходит взаимодействие по всей иерархии DNS, а в следующие разы взаимодействия не происходит, пока время задержки на изменение еще не истекло. И даже когда время актуальности истечёт, то возможно, что не будет происходить все преобразование имени, а произойдет всего лишь запрос вышестоящему серверу имен, не обновились ли данные у него. И если он отвечает "нет", то записью можно пользоваться дальше.

. Чем больше в распределенной системе узлов, тем ниже совокупная надёжность самой системы. Для борьбы с этим тоже годится использование кеширования. Сильно повышает надежность требование, чтобы NS-серверов было более одного. И желательно, чтобы у них были существенно разные IP-адреса. При этом для удобства администратора система устраивается так, что пользователю было абсолютно всё равно, какой из NS-серверов ему ответил. Все NS-сервера равноправны. Вопрос: а как несчастный администратор будет редактировать файлы сразу на двух машинах, которые лежат в абсолютно разных местах интернета?

Ответ: на самом деле среди этих машин есть главная, но об этом знает только администратор, и обычно он редактирует файл только на ней, а остальные просто скачивают с нее.

. Некоторое ограничение свободы обычного пользователя. Дело вот в чём: если вы обращаетесь к какому-либо NS-серверу с запросом относительно преобразования IP-адреса, никакого отношения к домену, за который отвечает этот сервер, не имеющего, то он имеет право ответить "не знаю". Такой запрос (на который можно получить ответ "не знаю") называется нерекурсивным. Все DNS-сервера в сети отвечают на нерекурсивные запросы. Другой вариант: когда вы обращаетесь к серверу с т.н. рекурсивным запросом, тогда NS-сервер самостоятельно обращается к корневому и так далее. В итоге либо преобразование будет произведено, либо вам ответят, что нет такого имени, либо вам ответят, что время запроса превысило лимит. И в отличие от нерекурсивного запроса, рекурсивные запросы обычно разрешены только для "своих" машин, т.е. решение, удовлетворяет ли сервер рекурсивные запросы или нет, принимает системный администратор этого сервера. В результате получается так, что далеко не все компьютеры могут посылать далеко не всем NS-серверам рекурсивные запросы. Как правило, существует два уровня: существует некая группа адресов, которым доверяют и они могут посылать рекурсивные запросы, а остальным нельзя.

Схема преобразования DNS-имени cs.msu.ru в его ip-адрес с учетом всего сказанного выше представлена на рисунке. Предполагается, что требуемый адрес не найден ни в одном кеше, и поэтому система DNS выполняет максимально возможное число запросов. На практике каждый DNS-ответ возвращает адреса нескольких серверов имен (в данном случае - до семи), но для простоты на рисунке указан только один.

 

 

Литература


1.  Якубайтис Э.А. Информационные сети и системы: Справочная книга. - М.: Финансы и статистика, 1996.

2.      Бэрри Нанс. Компьютерные сети пер. с англ. - М.: БИНОМ, 1996.

.        Основы современных компьютерных технологий под редакцией А.Д. Хомоненко- СПб КОРОНА принт, 1998.

.        Ресурсы Microsoft Windows NT Workstation 4.0 пер. с англ. яз. BNV - СПб

5.      Титтел Эд, Хадсон Курт, Дж. Майкл Стюард Networking Essentials - СПб

6.      Титтел Эд, Хадсон Курт, Дж. Майкл Стюард TCP/IP - СПб ПИТЕР, 1999.

.        Компьютерные сети: Учебный курс Microsoft Corporation - М.: Издательский отдел «Русская редакция», 1999.

.        Глоссарий сетевых терминов http://www.bilim.com/koi8/library/glossary/

.        Справочник Novell Netware 4 С.Б. Орлов, по заказу ИИЦ "Попурри", 1994. http://www.citforum.kts.ru/operating_systems/nw4/

10.    CISCO Internetworking Technology Overview Сервер Марк-ИТТ, Владимир Плешаков http://www.citforum.ru/win/nets/ito/index.shtml.

11.    Стэн Шатт Мир компьютерных сетей пер. с англ. - К.: BHV, 1996 - 288 c.: - ISBN 5-7733-0028-1.

.        Модель OSI Сервер BiLiM Systems Ltd.

.        http://www.citforum.ru/win/nets/switche/osi.shtml.

14.    Руководство по сетям Ethernet для начинающих - http://www.citforum.ru/win/nets/ethernet/starter.shtml.

.        Базовые технологии локальных сетей http://www.citforum.ru/win/nets/protocols2/index.shtml.

.        Введение в IP-сети http://www.citforum.ru/win/nets/ip/contents.shtml

.        Практическое руководство по сетям Plug-and-Play Ethernet http://www.citforum.ru/win/nets/ethernet/pract.shtml.

.        Семейство протоколов TCP/IP http://www.citforum.ru/win/internet/tifamily/index.shtml. Статическая IP-маршрутизация, Дмитрий Карпов http://www.citforum.ru/win/internet/tifamily/iproutng.shtml.

.        Протоколы TCP/IP Д. Комер "Межсетевой обмен с помощью TCP/IP" http://www.citforum.ru/win/internet/comer/contents.shtml.

20.    Протокол IP Радик Усманов http://www.citforum.ru/win/internet/tifamily/ipspec.shtml.

.        Операционные системы http://citforum.ru/operating_systems/index.shtml.

.        Концентраторы. http://www.idcom.ru/rationet/sysint/active.htm#nic.

.        Структурированные кабельные системы http://www.idcom.ru/rationet/sysint/cabsys.htm#magistral.

.        Типы соединений по витой паре http://ixbt.stack.net/comm/cable_utp.html.

.        Кабельные системы Ethernet http://www.bilim.com/koi8/bay/netgear/cables.htm.

.        Кабельные системы http://old.pcweek.ru/97_40/koi/re1.htm.

.        Физический уровень 100Base-FX - многомодовое оптоволокно http://www.citforum.ru/nets/protocols2/2_06_06.shtml.

.        Средства согласования протоколов на физическом и канальном уровнях http://www.citforum.ru/win/nets/tpns/glava_3.shtml.

.        Кабельные каналы http://www.idcom.ru/rationet/sysint/chanels.htm.

.        Роль коммуникационных протоколов и функциональное назначение основных типов оборудования корпоративных сетей. Н. Олифер, В. Олифер, ЦИТ http://www.citforum.ru/win/nets/protocols/index.shtml.

.        Физическая структуризация локальной сети. Повторители и концентраторы. Н. Олифер, В. Олифер, ЦИТ http://www.citforum.ru/win/nets/protocols/1_03_04.shtml.

.        Сетевые операционные системы. Н. А. Олифер, В. Г. Олифер, ЦИТ, http://www.citforum.kcn.ru/operating_systems/sos/contents.shtml.

.        Технология корпоративных сетей. М. Кульгин. - СПб ПИТЕР, 1999.

Похожие работы на - Компьютерные сети

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!