Open Library - открытая библиотека учебной информации. Введение в сети передачи данных

Метод доступа – это способ определения того, какая из рабочих станций сможет следующей использовать ЛВС. То, как сеть управляет доступом к каналу связи (кабелю), существенно влияет на ее характеристики. Примерами методов доступа являются:

Множественный доступ с прослушиванием несущей и разрешением коллизий (Carrier Sense Multiple Access with Collision Detection – CSMA/CD);

Множественный доступ с передачей полномочия (Token Passing Multiple Access – TPMA) или метод с передачей маркера;

Множественный доступ с разделением во времени (Time Division Multiple Access – TDMA);

Множественный доступ с разделением частоты (Frequency Division Multiple Access – FDMA) или множественный доступ с разделением длины волны (Wavelength Division Multiple Access – WDMA).

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

Алгоритм множественного доступа с прослушиванием несущей и разрешением коллизий приведен на рис. 3.5.

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

Рис. 3.5. Алгоритм CSMA/CD

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

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

Маркер (token), или полномочие, – уникальная комбинация битов, позволяющая начать передачу данных.

Алгоритм множественного доступа с передачей полномочия, или маркера, приведен на рис. 3.6.

Рис. 3.6. Алгоритм TPMA

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

Пакет распространяется по ЛВС от адаптера к адаптеру, пока не найдет своего адресата, который установит в нем определенные биты для подтверждения того, что данные достигли адресата, и ретранслирует его вновь в ЛВС. После чего пакет возвращается в узел из которого был отправлен. Здесь после проверки безошибочной передачи пакета, узел освобождает ЛВС, выпуская новый маркер.

Таким образом, в ЛВС с передачей маркера невозможны коллизии (конфликты). Метод с передачей маркера в основном используется в кольцевой топологии.

Данный метод характеризуется следующими достоинствами:

Гарантирует определенное время доставки блоков данных в сети;

Дает возможность предоставления различных приоритетов передачи данных.

Вместе с тем он имеет существенные недостатки:

В сети возможны потеря маркера, а также появление нескольких маркеров, при этом сеть прекращает работу;

Включение новой рабочей станции и отключение связаны с изменением адресов всей системы.

Множественный доступ с разделением во времени основан на распределении времени работы канала между системами (рис. 3.7).

Доступ TDMA основан на использовании специального устройства, называемого тактовым генератором. Этот генератор делит время канала на повторяющиеся циклы. Каждый из циклов начинается сигналом Разграничителем. Цикл включает n пронумерованных временных интервалов, называемых ячейками. Интервалы предоставляются для загрузки в них блоков данных.

Рис. 3.7. Структура множественного доступа с разделением во времени

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

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

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

Доступ FDMA основан на разделении полосы пропускания канала на группу полос частот (рис. 3.8), образующих логические каналы.

Широкая полоса пропускания канала делится на ряд узких полос, разделенных защитными полосами. Размеры узких полос могут быть различными.

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

Рис. 3.8. Схема выделения логических каналов

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

Метод доступа FDMA относительно прост, но для его реализации необходимы передатчики и приемники, работающие на различных частотах.

Методы доступа к сети

Технологии передачи

Методы доступа к сети

Адресация пакетов

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

Первая система . В сети каждому абоненту присваивается индивидуальный порядковый адрес, например, от 0 до 30 или от 0 до 254. Присваивание адресов производится программно или с помощью переключателей на плате адаптера. При этом требуемое количество разрядов адреса определяется из неравенства:

2 n > N max,

где n – количество разрядов адреса, а N max – максимально возможное количество абонентов в сети. Так, восемь разрядов адреса достаточно для сети из 255 абонентов. Один адрес 1111....11 отводится для широковещательной передачи и используется для пакетов , адресованных всем абонентам.

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

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

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

Ø Младшие 24 разряда кода адреса называются OUA (Organizationally Unique Address ) – организационно уникальный адрес. Именно их присваивает каждый из производителей сетевых адаптеров. Всего возможно свыше 16 миллионов комбинаций, то есть каждый изготовитель может выпустить 16 миллионов сетевых адаптеров.

Ø Следующие 22 разряда кода называются OUI (Organizationally Unique Identifier ) – организационно уникальный идентификатор. IEEE присваивает один или несколько OUI каждому производителю сетевых адаптеров. Это позволяет исключить совпадения адресов адаптеров от разных производителей. Всего возможно свыше 4 миллионов разных OUI. Это означает, что теоретически может быть зарегистрировано 4 миллиона производителей. Вместе OUA и OUI называются UAA (Universally Administered Address ) – универсально управляемый адрес или IEEE-адрес.

Ø Два старших разряда адреса управляющие, они определяют способ интерпретации остальных 46 разрядов. Старший бит I/G (Individual/Group ) указывает на тип адреса. Если он установлен в 0 , то индивидуальный , если в 1 , то групповой . Пакеты с групповым адресом получат все имеющие этот групповой адрес сетевые адаптеры. Причем групповой адрес определяется 46 младшими разрядами. Второй управляющий бит U/L (Universal/Local ) называется флажком универсального/местного управления и определяет, как был присвоен адрес данному сетевому адаптеру. Обычно он установлен в 0 . Установка бита U/L в 1 означает, что адрес задан не производителем сетевого адаптера, а организацией, использующей данную сеть. Это случается довольно редко.

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

Данной системы адресов придерживаются такие популярные сети, как Ethernet , Fast Ethernet , Token Ring , FDDI , 100VG-AnyLAN . Ее недостатки – высокая сложность аппаратуры сетевых адаптеров, а также большая доля служебной информации в передаваемом пакете – адреса источника и приемника вместе требуют уже 96 битов пакета или 12 байт.

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

Методы доступа

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

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

Методы управления обменом в локальных сетях делятся на две группы :

Ø Централизованные методы , в которых все управление доступом сосредоточено в одном месте. Недостатки таких методов – неустойчивость к отказам центра, недостаточная гибкость управления, так как центр обычно не может оперативно реагировать на все события в сети. Достоинство централизованных методов – отсутствие коллизий, так как центр всегда предоставляет право на передачу только одному абоненту.

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



Существует и другое деление методов доступа, относящееся, главным образом, к децентрализованным методам:

Ø Детерминированные методы определяют четкие правила, по которым чередуются захватывающие сеть абоненты. Абоненты имеют определенную систему приоритетов. При этом, как правило, конфликты полностью исключены, но некоторые абоненты могут дожидаться своей очереди на передачу слишком долго. К детерминированным методам относится, например, маркерный доступ (сети Token Ring , FDDI ), при котором право передачи передается по эстафете от абонента к абоненту.

Ø Случайные методы подразумевают случайное чередование передающих абонентов. При этом возможность конфликтов подразумевается, но предлагаются способы их разрешения. Случайные методы значительно хуже детерминированных, работают при большом трафике сети и не гарантируют абоненту величину времени доступа . В то же время они обычно более устойчивы к отказам сетевого оборудования и более эффективно используют сеть при малой интенсивности обмена. Пример случайного метода – CSMA/CD (сеть Ethernet ).

При обмене данными между компьютерами используются три метода передачи данных:

Симплексная (однонаправленная) передача (телевидение, радио);

Полудуплексная (прием/передача информации осуществляется поочередно);

Дуплексная (двунаправленная), каждая станция одновременно передает и принимает данные.

Для передачи данных в информационных системах наиболее часто применяется последовательная передача. Широко используются асинхронная и синхронная передачи.

При асинхронной передаче каждый символ передается отдельной посылкой. Стартовые биты предупреждают приемник о начале передачи. Затем передается символ. Для определения достоверности передачи используется бит четности (бит четности =1, если количество единиц в символе нечетно, и 0 в противном случае). Последний бит "стоп бит" сигнализирует об окончании передачи.

Преимущества: несложная отработанная система; недорогое (по сравнению с синхронным) интерфейсное оборудование.

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

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

При синхронной передаче данные передаются блоками. Для синхронизации работы приемника и передатчика в начале блока передаются биты синхронизации. Затем передаются данные, код обнаружения ошибки и символ окончания передачи. При синхронной передаче данные могут передаваться и как символы, и как поток битов. В качестве кода обнаружения ошибки обычно используется Циклический Избыточный Код Обнаружения Ошибок (CRC). Он вычисляется по содержимому поля данных и позволяет однозначно определить достоверность принятой информации.

Преимущества: высокая эффективность передачи данных; высокие скорости передачи данных; надежный встроенный механизм обнаружения ошибок.

Недостатки: интерфейсное оборудование более сложное и, соответственно, более дорогое.

Протоколы SDLC и HDLC основываются на синхронной бит-ориентированной передаче данных.

Для доступа к сети используются несколько методов:

Ø Метод коллективного доступа с опознаванием (прослушиванием) несущей и обнаружением коллизий. CSMA/CD (carrier-sense-miltiply-acct with collision detection).

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

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

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

Этот метод нашел широкое распространение вследствие своей простоты.

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

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

Ø Маркерный метод . Право доступа к каналу передается с помощью специального кадра, который называется маркером. Все узлы ретранслируют кадры, и маркер передается от узла к узлу. Узел, получив маркер, определяет наличие у него данных для передачи. Если данных нет, то узел передает маркер дальше. Если данные есть, то маркер изымается из сети и узел передает свои данные по кольцу. Каждый кадр снабжается как адресом получателя, так и адресом отправителя. Узел, получивший кадр с адресом получателя, совпадающим с его собственным адресом, копирует данные, вставляет в кадр признак подтверж­дения приема и оправляет кадр дальше. Получив обратно посланный кадр с подтверждением получения, узел-отправитель отправляет в сеть новую копию маркера для передачи доступа к сети. Время доступа к сети ограничивается временем удержания маркера, в течение которого узел может послать несколько кадров дан­ных и после чего узел обязан передать маркер в сеть.

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

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

· централизованные методы , при которых управление сосредоточено в одном месте. Недостатками являются: малая гибкость управления и неустойчивость к отказам центра. Достоинство – отсутствие конфликтов;

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

Можно привести другую классификацию методов:

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

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

Рассмотрим некоторые конкретные реализации методов доступа.

Метод CSMA / CD (множественный доступ с контролем носителя и обнаружением коллизий) в настоящее время является одним из наиболее распространенных. Используется этот метод в архитектуре Ethernet. Отличительные особенности этого метода следующие:

· контроль носителя – перед передачей в сеть данных узел сначала проверяет состояние линии связи (носителя) на предмет занятости передачей других данных;

· множественный доступ – несколько узлов одновременно могут начать передачу данных в сеть;

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


Это необходимо для того, чтобы ни один узел не мог захватить линию связи монопольно.

Метод CSMA / CA (множественный доступ с контролем носителя и предотвращением конфликтов) работает вначале аналогично CSMA/CD. Однако, если узел не находит в линии чужих сигналов, он посылает запрос на передачу (RTS), тем самым объявляя всем, что он намерен выполнить передачу. Поэтому здесь возможен только конфликт запросов RTS, а не пакетов данных, т.е. конфликты исключены. Производительность этого метода меньше, чем CSMA/CD практически вдвое. Используется этот метод в сетях AppleTalk.

Методы CSMA/CD и CSMA/CА еще называют конкурентными методами (в них узлы как бы конкурируют за право передачи).

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

Метод доступа с приоритетами запросов был разработан для локальной сетевой архитектуры 100VG-AnyLAN (высокоскоростная, гибкая и эффективная архитектура, призванная заменить Ethernet). В этих сетях используется древовидная топология, аналогичная звезде (рис.2.15).

Рис.2.15. Топология 100VG-AnyLAN

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

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

Метод доступа определяет алгоритм , согласно которому узлы сети получают доступ к среде передачи данных и осуществляют мультиплексирование / демультиплексирование данных.

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

Принципиальное отличие алгоритма ALOHA от CSMA/CD (используемого в Ethernet) с точки зрения столкновений заключается в том, что в первом случае столкновения детектируются на входе получателя, а во втором – на выходе отправителя .

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

Большая часть современных локальных сетей базируется на алгоритме доступа CSMA/CD ( Carrier Sensitive Multiple Access with Collision Detection ), где все узлы имеют равные возможности доступа к сетевой среде, а при одновременной попытке фиксируется столкновение и сеанс передачи повторяется позднее. Ряд разновидностей такого протокола рассмотрели Кляйнрок и Тобаги еще в 1975 году. После передачи очередного пакета (кадра) обычно делается некоторая пауза. После этого любой узел, подключенный к сетевому сегменту, может попытать счастья. Модификацией CSMA-алгоритма является схема, в которой после передачи кадра выделяется определенный временной домен (соревнования), когда претенденты могут выяснять отношения между собой. При столкновении начало передачи возможно только во время очередного домена соревнования. В этой модификации должен быть предусмотрен некоторый механизм синхронизации и исключения бесконечной череды столкновений.

Алгоритм CSMA предпочтительнее ALOHA , так как здесь ни один из пользователей не начинает передачу, если канал занят. Этот способ доступа покрывается патентами США 4063220 и 4099024 (Ксерокс), но IEEE имеет соглашение с этой компанией, которое разрешает использовать данный алгоритм без каких-либо ограничений. Здесь нет возможности приоритетного доступа, и по этой причине такие сети плохо приспособлены для задач управления в реальном масштабе времени. Некоторое видоизменение алгоритма CSMA/CD (как это сделано в сетях CAN или в IBM DSDB) позволяют преодолеть эти ограничения. Доступ по схеме CSMA/CD (из-за столкновений) предполагает ограничение на минимальную длину пакета. По существу метод доступа CSMA/CD (в полудуплексном случае) предполагает широковещательную передачу пакетов (не путать с широковещательной адресацией). Все рабочие станции логического сетевого сегмента воспринимают эти пакеты хотя бы частично, чтобы прочесть адресную часть. При широковещательной адресации пакеты не только считываются целиком в буфер , но и производится прерывание процессора для обработки факта прихода такого пакета.

Логика поведения субъектов в сети с доступом CSMA/CD может варьироваться. Здесь существенную роль играет то, синхронизовано ли время доступа у этих субъектов. В случае Ethernet такой синхронизации нет. В общем случае при наличии синхронизации возможны следующие алгоритмы:

  1. Если канал свободен, терминал передает пакет с вероятностью 1.
  2. Если канал занят, терминал ждет его освобождения, после чего производится передача.
  1. Если канал свободен, терминал передает пакет.
  2. Если канал занят, терминал определяет время следующей попытки передачи. Это время может задаваться некоторым статистическим распределением.
  1. Если канал свободен, терминал с вероятностью р передает пакет, а с вероятностью 1р он откладывает передачу на t секунд (например, на следующий временной домен).
  2. При повторении попытки в случае свободного канала алгоритм не изменяется.
  3. Если канал занят, терминал ждет, пока канал не освободится, после чего действует снова согласно алгоритму пункта 1.

Алгоритм А на первый взгляд представляется привлекательным, но в нем заложена возможность столкновений с вероятностью 100%. Алгоритмы Б и В более устойчивы в отношении этой проблемы.

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

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

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

Сопоставление эффективности использования канала для различных протоколов произвольного доступа произведено на рис. 10.5 .


Рис. 10.5.

Протокол доступа CSMA может предполагать, что когда канал оказывается свободным, а рабочая станция готова начать передачу, реальная пересылка кадра в рамках заданного временного домена происходит с определенной вероятностью p . С вероятностью 1-р передача будет отложена до следующего временного домена. В следующем домене, если канал свободен, с вероятностью р осуществится передача или будет отложена до следующего домена и так далее. Процесс продолжается до тех пор, пока кадр не будет передан. На рисунке эта вероятность р отмечена цифрами после аббревиатуры "CSMA". В случае Ethernet эта вероятность равна единице (CSMA-1) , то есть рабочая станция безусловно начнет передачу, если она к этому готова, а канал свободен. Из рисунка видно, что чем меньше эта вероятность , тем выше эффективность (среднее время доступа к сетевой среде также увеличивается). Очевидно, что все разновидности протокола доступа CSMA эффективнее протокола ALOHA в обеих его разновидностях. Связано это с тем, что ни одна станция не начинает передачу, если обнаружит, что сетевая среда занята. Существует еще одна разновидность протокола CSMA (nonpersistent ), в которой сетевой субъект при готовности анализирует состояние сетевой среды и, если канал занят, возобновляет попытку спустя псевдослучайный интервал времени, то есть ведет себя так, будто произошло столкновение. Такой алгоритм повышает эффективность использования канала при существенном возрастании усредненной задержки доступа.

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

Рассмотрим, как можно избежать проблем столкновений пакетов. Пусть к сетевому сегменту подключено N рабочих станций. После передачи любого пакета выделяется N временных интервалов. Каждой подключенной к сетевому сегменту машине ставится в соответствие один из этих интервалов длительностью L . Если машина имеет данные и готова начать передачу, она записывает в этот интервал бит , равный 1. По завершении этих N интервалов рабочие станции по очереди, определяемой номером приписанного интервала, передают свои пакеты (см. рис. 10.6 , N = 8 ).


Рис. 10.6.

В примере на рис. 10.6 сначала право передачи получают станции 0, 2 и 6, а в следующем цикле - 2 и 5 (пересылаемые пакеты окрашены в серый цвет). Если рабочая станция захочет что-то передать, когда ее интервал ( домен ) уже прошел, ей придется ждать следующего цикла . По существу данный алгоритм является протоколом резервирования. Машина сообщает о своих намерениях до того, как начинает что-либо передавать. Чем больше ЭВМ подключено к сетевому сегменту, тем больше временных интервалов должно быть зарезервировано и тем ниже эффективность сети. Понятно, что эффективность растет с ростом L .

Вариация данного алгоритма доступа реализована в сетях сбора данных реального времени CAN ( Controller Area Network - http://www.kvaser.se/can/protocol/index.htm - алгоритм доступа CSMA/CA - collision avoidance - с исключением столкновений). Там в указанные выше интервалы записывается код приоритета рабочей станции. Причем станции должны быть синхронизованы и начинать запись своего уникального кода одновременно, если все или часть из них готовы начать передачу. Эти сигналы на шине суммируются с помощью операции "проволочное ИЛИ" (если хотя бы один из участников выставляет логическую единицу, на шине будет низкий уровень). В процессе побитового арбитража каждый передатчик сравнивает уровень передаваемого сигнала с реальным уровнем на шине. Если эти уровни идентичны, он может продолжить, в противном случае передача прерывается и шина остается в распоряжении более приоритетного кадра. Для пояснения работы алгоритма предположим, что N = 5 и одновременно производится попытка начать передачу станции с кодами приоритета 10000, 10100 , и 00100 . Первыми будут посланы станциями биты 1, 1 и 0. Третья станция сразу выбывает из конкурса (ее