- •Содержание
- •Часть 1. Организация и построение локальных компьютерных сетей 14
- •Глава 1. Первое знакомство 14
- •Глава 2. Локальные компьютерные сети магистрального типа 53
- •Глава 3. Локальные компьютерные сети кольцевого типа 71
- •3.1. Основные методы доступа к моноканалу 71
- •Введение
- •Часть 1. Организация и построение локальных компьютерных сетей Глава 1. Первое знакомство
- •1.1. Что такое локальные компьютерные сети ?
- •1.2. Основные понятия и определения
- •1. Скорость передачи данных в физической коммуникационной среде.
- •2. Скорость передачи данных между узлами сети.
- •1.3. Основные топологии локальных компьютерных сетей
- •1.4. Физические среды, используемые при построении общего канала передачи данных
- •1.5. Основные способы представления данных при передаче через моноканал
- •1.6. Многоуровневая эталонная модель архитектуры локальных компьютерных сетей
- •1.7. Основные этапы преобразования данных в рабочей станции
- •1.8. Основы организации сетевых адаптеров
- •Глава 2. Локальные компьютерные сети магистрального типа
- •2.1. Основные методы доступа к моноканалу
- •Pure aloha (Истинная Алоха)
- •Slotted aloha (Тактированная Алоха)
- •Csma–Carrier Sense Multiple Access (Множественный доступ с контролем несущей)
- •Csma/cd–Carrier Sense Multiple Access with Collision Detection (Множественный доступ с контролем несущей и обнаружением конфликтов)
- •Csma/ca–Carrier Sense Multiple Access with Collision Avoidance (Множественный доступ с контролем несущей и избежанием конфликтов)
- •Token Bus или Token Passing (Маркерный доступ к шине или Метод передачи маркера)
- •2.2. Типовая организация сетевого адаптера магистральной лкс
- •2.3. Организация адаптера с методом доступа csma/cd
- •Т2.4. Организация адаптера с методом доступа Token Bus
- •Глава 3. Локальные компьютерные сети кольцевого типа
- •3.1. Основные методы доступа к моноканалу
- •Register Insertion Ring (Метод вставки регистра)
- •Slotted Ring (Тактированное кольцо или Тактированный метод доступа к кольцу)
- •Token Ring (Маркерное кольцо или Маркерный метод доступа к кольцу)
- •3.2. Типовая организация приемопередатчика
- •3.3. Организация адаптера с методом доступа Slotted Ring
- •3.4. Организация адаптера с методом доступа Token Ring для централизованной лкс
- •Режим транзитной передачи.
- •Режим вывода данных (опроса рабочих станций сети)
- •Режим ввода данных
- •3.5. Организация адаптера с методом доступа Register Insertion Ring
- •Режим нормальной работы.
- •Передача кадра.
- •Прием кадра.
- •Режим конфликтной работы.
- •Работа са при конфликте первого вида.
- •Работа са при конфликте второго вида.
- •Режим изъятия кадра.
- •Часть II. Сетевые технологии локальных компьютерных сетей Глава 4. Классические технологии лкс
- •4.1. Сетевая технология arcNet
- •4.2. Сетевая технология Ethernet
- •Общие характеристики лкс EtherNet
- •”Тонкий“ Ethernet (Thin Ethernet)
- • ”Толстый” Ethernet (Thick Ethernet)
- •Комплексирование лкс
- •Глава 5. Перспективные высокопроизводительные технологии лкс
- •5.1. Сетевая технология Token Ring Network
- •5.2. Сетевая технология fddi
- •5.3. Сетевая технология Radio Ethernet
- •Глава 6. Широкополосные лкс
- •6.1. Использование поликаналов в широкополосных лкс с двунаправленной шиной
- •6.2. Широкополосные лкс на базе catv
- •Глава 7. Интеграция компьютерных сетей. Мультисети
- •7.1. Межсетевые устройства интеграции
- •7.2. Основные способы интеграции лкс
- •7.3. Использование протокола X.25 для интеграции лкс
- •ЧасТь III. Элементная база локальных компьютерных сетей Глава 8. Бис для построения сетевых адаптеров
- •8.4. Бис сети Cheapernet
- •8.5. Микросхемы для кольцевой сети с маркерным доступом
- •8.6. Контроллер маркерного доступа wd 2840
- •Интерфейс с модемом
- •Передача данных
- •Метод доступа
- •Удаление станции
- •Литература
- •Компьютерные сети локального масштаба
1.6. Многоуровневая эталонная модель архитектуры локальных компьютерных сетей
Разработка аппаратного и программного обеспечения для ЭВМ, объединяемых в единую сеть, является весьма сложной задачей, даже если все элементы сети разрабатываются одной фирмой–изготовителем. Если же попытаться создать сеть, используя ЭВМ и средства связи от разных фирм (что собственно говоря и ставится основной целью построения сети), то проблема их стыковки становится практически неразрешимой, если были использованы традиционные методы разработки замкнутых вычислительных систем, когда элементы последних подчиняются правилам, ограничениям и соображениям, принятым проектировщиками или изготовителями системы исключительно из внутренних (фирменных) соображений (например, упрощение и удешевление продукции).
Такое положение дел привело Международную организацию по стандартизации ISO (International Standard Organization) к необходимости разработки эталонной модели архитектуры компьютерной сети, названной моделью взаимосвязи открытых систем OSI (Open Systems Interconnection). Весь процесс взаимодействия элементов сети, начиная от команд для соединения канала и кончая диалогом пользователей, был представлен как иерархия уровней. ISO формализовала все возможные процедурные действия в сети в виде упорядоченной иерархической системы, состоящей из семи функциональных слоев или уровней.
Функционирование компьютерных сетей представляется в терминах процессов. Процесс–это динамический объект, реализующий целенаправленный акт обработки данных. Процесс порождается программой или пользователем и связан с данными, поступающими извне в качестве исходных и формируемыми процессом для внешнего использования. Процессы подразделяются на два класса: прикладные и системные. Промежуток времени, в течение которого взаимодействуют процессы, называется сеансом (сессией). Единственная форма взаимодействия процессов в сетях – обмен сообщениями. Сообщение – последовательность данных, имеющих законченное смысловое значение. Ввод сообщений в процесс и вывод их из процесса производится через логические (программно–организованные) точки, которые получили название порты. Последние делятся на входные и выходные.
Компьютерная сеть в рамках OSI представляется как совокупность систем, связанных между собой некоторой передающей средой. Система – взаимосвязанная иерархическая группа функций, реализованных аппаратно или (и) программно, которые обеспечивают прием, хранение, обработку и выдачу данных. В качестве систем для глобальных сетей выступают абонентские и коммуникационные ЭВМ (узлы связи), а для локальных сетей – рабочие станции и серверы. Система, соответствующая концепции архитектуры OSI, называется открытой. Таким образом, функционирование сети можно трактовать как взаимодействие отдельных систем, входящих в нее. Каждая система обычно специализируется на выполнение определенных функций преобразования данных. Система, обеспечивающая взаимодействие других систем, называется коммуникационной, остальные системы называются абонентскими.
Правила взаимодействия, форматы данных и временные соотношения в пределах одного уровня (между одноименными уровнями разных систем) называют протоколом взаимодействия (протоколом). Правила взаимодействия смежных сетевых уровней в пределах одной системы называют межуровневым интерфейсом (интерфейсом).
Каждый из семи уровней имеет собственный протокол и соответствующее название (рис. 1.9):
уровень 1: физический (Physical);
уровень 2: канальный (Data Link); иначе: уровень управления каналом или звеном связи;
уровень 3: сетевой (Network);
уровень 4: транспортный (Transport); иначе: уровень управления сквозной транспортировкой;
уровень 5: сеансовый (Session);
уровень 6: представительский (Presentation); иначе: уровень представления данных;
уровень 7: прикладной (Application).
Рассмотрим поочередно сетевые функции всех уровней модели OSI.
Физический уровень. Обеспечивает установление, поддержание и расторжение физических соединений, т.е. физический путь для электрических (или другой природы) сигналов, представляющих биты передаваемых данных. Устанавливает характеристики этих сигналов (например, значения напряжения и тока, частоты и длительности), а также механические свойства кабелей и разъемов.
Этот уровень имеет дело с передачей битов по физическим каналам, таким, например, как коаксиальный кабель, витая пара или оптоволоконный кабель. К этому уровню имеют отношение характеристики физических сред передачи данных, такие как полоса пропускания, помехозащищенность, волновое сопротивление и другие. На этом же уровне определяются характеристики электрических сигналов, такие как требования к фронтам импульсов, уровням напряжения или тока передаваемого сигнала, тип кодирования, скорость передачи сигналов. Кроме этого, здесь стандартизуются типы разъемов и назначение каждого контакта.
Функции физического уровня реализуются во всех устройствах, подключенных к сети. Со стороны компьютера функции физического уровня выполняются сетевым адаптером или последовательным портом.
Канальный уровень. Обеспечивает надежную передачу данных через физический канал, организуемый на уровне 1. Так как физическая среда передачи данных не является надежной из–за различных шумов, помех, наводок, то для обеспечения надежности используются средства контроля принимаемых данных. При обнаружении ошибки в поступающих данных производится перезапрос данных. Организует так называемый информационный канал (иначе звено связи или звено данных), который предназначен для передачи данных между двумя смежными сетевыми системами (элементами), следит за его соединением, поддержанием и разъединением. Обмен данными по этому каналу осуществляется специально организованными порциями (последовательностями) битов – кадрами.
На физическом уровне просто пересылаются биты. При этом не учитывается, что в некоторых сетях, в которых линии связи используются (разделяются) попеременно несколькими парами взаимодействующих компьютеров, физическая среда передачи может быть занята. Поэтому одной из задач канального уровня является проверка доступности среды передачи. Другой задачей канального уровня является реализация механизмов обнаружения и коррекции ошибок. Для этого на канальном уровне биты группируются в наборы, называемые кадрами (frames). Канальный уровень обеспечивает корректность передачи каждого кадра, помещая специальную последовательность бит в начало и конец каждого кадра, чтобы отметить его, а также вычисляет контрольную сумму, суммируя все байты кадра определенным способом и добавляя контрольную сумму к кадру. Когда кадр приходит, получатель снова вычисляет контрольную сумму полученных данных и сравнивает результат с контрольной суммой из кадра. Если они совпадают, кадр считается правильным и принимается. Если же контрольные суммы не совпадают, то фиксируется ошибка.
Сетевой уровень. Выполняет сетевые функции: адресацию, маршрутизацию и коммутацию данных, следующих от одной системы сети к другой, управляет потоками пакетов (трафиком) и приоритетностью их передачи, т.е. регламентирует управление передачей в сети. Обеспечивает независимость вышерасположенных уровней от методов передачи, функций трансляции и маршрутизации, маскирует от транспортного уровня все особенности реальных средств связи. На этом уровне обмен данными осуществляется специальными порциями данных – пакетами.
Этот уровень служит для образования единой транспортной системы, объединяющей несколько сетей с различными принципами передачи информации между конечными узлами. Рассмотрим функции сетевого уровня на примере локальных сетей. Протокол канального уровня локальных сетей обеспечивает доставку данных между любыми узлами только в сети с соответствующей типовой топологией. Таким образом, внутри сети доставка данных регулируется канальным уровнем, а вот доставкой данных между сетями занимается сетевой уровень.
Транспортный уровень. Обеспечивает установление, поддержание и разъединение сквозных транспортных каналов для непрерывной передачи данных между двумя взаимодействующими процессами (от порта системы–источника до порта системы–адресата). Работа транспортного уровня заключается в том, чтобы обеспечить приложениям или прикладному и сеансовому уровню - передачу данных с той степенью надежности, которая им требуется. Предназначен для освобождения расположенных выше уровней от всех забот по передаче данных и предоставления в их распоряжение некоторой “идеальной” системы транспортировки (транспортной станции) данных, которая не зависит от особенностей реализации трех нижележащих уровней и делает отрицательные характеристики последних (сети передачи данных) незаметными для пользователя. Со стороны системы–источника делит длинные сообщения, приходящие от верхних уровней, на пакеты данных, имеющих ограниченную и вполне конкретную для сети длину. Со стороны системы–адресата должен собрать (скомпоновать) исходное сообщение из множества пакетов, полученных от нижележащих уровней. Тем самым выполняется сквозное управление транспортировкой пакетов между взаимодействующими системами сети.
На пути от отправителя к получателю пакеты могут быть искажены или утеряны. Хотя некоторые приложения имеют собственные средства обработки ошибок, существуют и такие, которые предпочитают сразу иметь дело с надежным соединением.
Сеансовый уровень. Содержит механизмы проведения сеанса связи между двумя процессами пользователей, протекающими в двух разных системах (узлах) сети. Сеанс создается по запросу процесса пользователя, в котором определяется адрес сеанса связи и партнер (например, пользователь в другом узле). Сеанс может начаться только в том случае, если партнер существует (его процесс является активным) и согласен связаться. При этом создаются порты для приема и передачи сообщений. Позволяет реализовать двунаправленный одновременный (дуплексный) или поочередный (полудуплексный) обмен данными, поддерживать синхронизацию и управление взаимодействием. Определяет начало и окончание сеанса, длительность и режим ведения диалога, восстановление сеанса после ошибок и неполадок.
Сеансовый уровень обеспечивает управление диалогом для того, чтобы фиксировать, какая из сторон является активной в настоящий момент, а также предоставляет средства синхронизации. Последние позволяют вставлять контрольные точки в длинные передачи, чтобы в случае отказа можно было вернуться назад к последней контрольной точке, вместо того, чтобы начинать все с начала.
Представительский (представительный) уровень. Выполняет функции интерпретации (представления) и преобразования синтаксиса и форматов данных (кодов, символьных строк, изображений, алфавитно–цифровых и графических данных), функции организации файлов и типов данных, форматирование и компоновку данных. Основное назначение этого уровня – обеспечение независимости прикладных процессов от различий в форме представления и синтаксиса данных, передаваемых между различными системами сети, а также преобразование сообщений пользователя из формы, используемой прикладным уровнем, в форму, используемую более низкими уровнями. Целью преобразования (кодирования) сообщения является сжатие данных или (и) их защита. В интерфейсе выше данного уровня поля данных в сообщениях имеют явную смысловую форму, в интерфейсах ниже данного уровня поля данных в сообщениях и пакетах рассматриваются только как передаточный груз, а их смысловое значение на обработку не влияет. Осуществляет трансляцию различных языков, форматов данных и кодов для взаимодействия разнотипных ЭВМ, оснащенных специфичными операционными системами и работающих в различных кодах, между собой и с терминалами разных типов. Взаимодействие процессов, базирующихся на различных языках представления и обработки данных, организуется на основе стандартных форм представления заданий и наборов данных. Процедуры уровня интерпретируют стандартные сообщения применительно к конкретным системам (ЭВМ, терминалам). Этим создается возможность взаимодействия, например, одной программы с терминалами разных типов.
Этот уровень обеспечивает гарантию того, что информация, передаваемая прикладным уровнем, будет понятна прикладному уровню в другой системе. При необходимости уровень представления выполняет преобразование форматов данных в некоторый общий формат представления, а на приеме, соответственно, выполняет обратное преобразование. Таким образом, прикладные уровни могут преодолеть, например, синтаксические различия в представлении данных. На этом уровне может выполняться шифрование и дешифрование данных, благодаря которому секретность обмена данными обеспечивается сразу для всех прикладных сервисов.
Прикладной уровень. Поддерживает обмен данными между отдельными пользователями, прикладными программами или устройствами. Обеспечивает на прикладном и системном уровнях поддержку операторских функций, дистанционное использование данных (теледоступ), управление передачей файлов, работу с распределенными базами данных, диалоговые функции высокого уровня и т.п. На этом уровне требуется несколько типов протоколов, часть которых предназначена для конкретных специфических приложений, а остальные – для поддержки пользователя и сети (например, для вычислений, управления доступом, проверки полномочий пользователя).
Прикладной уровень - это в действительности просто набор разнообразных протоколов, с помощью которых пользователи сети получают доступ к разделяемым ресурсам, таким как файлы, принтеры или гипертекстовые Web-страницы, а также организуют свою совместную работу, например, с помощью протокола электронной почты. Единица данных, которой оперирует прикладной уровень, обычно называется сообщением (message).
Каждый из уровней эталонной модели OSI определяет некоторое множество функций и услуг, которые реализуются в протоколах программными или (и) аппаратными средствами. Работа протоколов трех верхних уровней не зависит от особенностей реализации сети, протоколы же уровней 1–4 зависят от них в большей или меньшей степени.
Такая многоуровневая организация обеспечивает независимость управления на некотором уровне от порядка функционирования нижних и верхних уровней. Этим обеспечивается открытость и гибкость системы, что позволяет выполнять модификацию отдельного уровня, не затрагивая остальных уровней.
ЛКС так же, как и глобальные сети, базируются на принципе многоуровневого управления процессами и иерархии протоколов и интерфейсов. Простота структуры ЛКС, обусловленная однотипностью систем в отношении порядка использования моноканала и простотой конфигурации связей между системами, а также высокая пропускная способность моноканала существенно упрощают архитектуру (организацию) ЛКС по сравнению с глобальной сетью.
В связи с тем, что в ЛКС отпадает необходимость в маршрутизации пакетов, так как при использовании моноканала маршруты однозначно определены, эталонная модель OSI для ЛКС, как правило, не содержит сетевой уровень управления. Необходимость в этом уровне появляется при комплексировании нескольких ЛКС, содержащих моноканалы, в единую сеть. Однако и в этом случае функции сетевого уровня оказываются, как правило, достаточно простыми.
На транспортном уровне протокол управления передачей обеспечивает установление, поддержание и разъединение сквозных транспортных каналов
между системами с помощью логических каналов5, реализованных на нижних уровнях. При этом транспортный уровень ликвидирует различия между потребностями процессов в обмене данными и ограниченными возможностями настроенных логических каналов. За счет этого при программировании прикладных процессов нет необходимости учитывать специфику функционирования моноканала. Различают дейтаграммный6 (иначе: датаграммный) и виртуальный сквозные транспортные каналы. В первом случае данные передаются без установления соединения.
Протоколы высших уровней (5–7) модели OSI для ЛКС по своим функциям аналогичны соответствующим протоколам глобальных сетей, описанным выше.
Специфика ЛКС в модели OSI более всего отразилась на первых двух ее уровнях. Комитет IEEE в проекте 8027 (IEEE Project 802) модифицировал два нижних уровня эталонной модели OSI, приспособив ее к задачам построения ЛКС (рис. 1.10).
Согласно проекту стандарт IEEE 802.1 отражает общие положения по проектированию и эксплуатации ЛКС. В нем описаны общие принципы работы ЛКС и ее основных элементов на канальном уровне, а также рекомендации по созданию интерфейсов. Уровень звена данных (Data Link) делится на два подуровня:
управления логическим звеном (УЛЗ), что соответствует английскому варианту: LLC – Logical Link Control;
управления доступом к среде (УДС), что соответствует английскому варианту: MAC – Medium Access Control.
В функции LLC (УЛЗ) – подуровня входит передача кадров между станциями, включая исправление ошибок. LLC не зависит от физических особенностей среды и алгоритмов доступа к ней, не считая временных соотношений.
Протокол LLC – подуровня (стандарт IEEE 802.2 определяет свод правил проектирования протоколов и интерфейсов данного подуровня) определяет три режима работы сети.
Обмен пакетами между двумя станциями происходит без предварительного установления соединения между ними, без подтверждения принятых пакетов, без управления их потоком и исправления ошибок передачи.
При передаче пакета между станциями предварительно устанавливается соединение. Передача пакета сопровождается выдачей в обратном направлении пакета–квитанции. Осуществляется управление потоком пакетов путем их циклической нумерации.
Передача данных производится без предварительного установления соединения, но с подтверждением принятых пакетов. MAC (УДС) – подуровень реализует алгоритм доступа к среде и адресацию станций. Он реализует функцию совместного использования физической среды, определяющую основные особенности ЛКС. Группа стандартов IEEE 802.3 – IEEE 802.78 определяет основные реализации протоколов MAC–подуровня.
Физический уровень обеспечивает сопряжение станции с физической средой, кодирование и декодирование сигналов, их буферизацию, поддерживает и восстанавливает битовую синхронизацию. Он делится на три подуровня (рис. 1.10):
передачи физических сигналов (ПФС), что соответствует англ. варианту: PLS – Physical Signaling;
интерфейса с модулем сопряжения (ИМС), что соответствует англ. варианту: AUI – Attachment Unit Interface;
модуля сопряжения со средой (МСС), что соответствует англ. варианту: MAU – Media Attachment Unit.
Подуровень PLS (ПФС) был выделен для облегчения схемной интеграции с канальным уровнем (уровнем звена данных) и обеспечивает для подуровня MAC (УДС) последовательный побитовый интерфейс с физической средой.
Подуровень AUI (ИМС) представляет интерфейсный кабель с интерфейсными соединителями (ИСС), который позволяет размещать станцию на некотором удалении от физической среды. Кабель может заканчиваться ИСС с PLS и MAU (рис. 1.10,а) или же жестко соединяться с PLS и MAU, но иметь при этом ИСС в разрыве кабеля (рис. 1.10,б).
Подуровень MAU (МСС) согласует параметры сигналов, поступающих из PLS, с характеристиками физической среды, обеспечивая при этом использование определенного PLS различными типами физической среды.
Подуровень MAU состоит из двух элементов:
модуль доступа к среде (МДС), что соответствует англ. варианту: PMA – Physical Media Access;
интерфейс, зависимый от среды (ИЗС), что соответствует англ. варианту: MDI – Media Dependent Interface.
PMA (МДС) содержит функциональные схемы для подключения станции к физической среде и отключения ее от среды без нарушения работы станции.
MDI (ИЗС) обеспечивает механический и электрический интерфейс между физической средой и PMA. Характеристики этого интерфейса определяются свойствами физической среды и способом соединения PMA со средой: прямой электрический контакт с кабелем (рис. 1.10,а) либо размещение в разрыве кабеля (рис. 1.10,б).
В ЛКС некоторых типов подуровень AUI может отсутствовать и в этом случае подуровни PLS и MAU соединяются непосредственно (например, в ЛКС “тонкий” Ethernet, где отсутствует интерфейсный кабель при подключении станции к физической среде – коаксиальному кабелю через специальный разъем).
