Информация в локальных сетях, как правило, передается отдельными порциями, кусками, называемыми в различных источниках пакетами, кадрами или блоками. Использование пакетов связано с тем, что в сети, как правило, одновременно может происходить несколько сеансов связи (во всяком случае, при топологиях «шина» и «кольцо»), то есть в течение одного и того же интервала времени могут идти два или больше процессов передачи данных между различными парами абонентов. Пакеты как раз и позволяют разделить во времени сеть между передающими информацию абонентами.
Если бы вся требуемая информация передавалась сразу, непрерывно, без разделения на пакеты, то это привело бы к монопольному захвату сети одним из абонентов на довольно продолжительное время. Все остальные абоненты вынуждены были бы ждать окончания передачи всей информации, что в ряде случаев могло бы потребовать десятков секунд и даже минут (например, при копировании содержимого целого жесткого диска). Чтобы уравнять в правах всех абонентов, а также примерно уравнять время доступа к сети и интегральную скорость передачи информации для всех абонентов, как раз и используются пакеты (кадры). Длина пакета зависит от типа сети, но обычно она составляет от нескольких десятков байт до нескольких килобайт.
Важно также и то, что при передаче больших массивов информации становится довольно высокой вероятность ошибки из-за помех и сбоев. Например, при характерной для локальных сетей величине вероятности одиночной ошибки в 10~8 пакет длиной 10 Кбит будет искажен с вероятностью 10~4, а массив длиной 10 Мбит - с вероятностью 10"1. К тому же обнаружить ошибку в массиве из нескольких мегабайт намного сложнее, чем в пакете из нескольких килобайт. При обнаружении ошибки придется повторить передачу всего массива, что гораздо сложнее, чем повторно передать небольшой пакет. Но при повторной передаче большого массива снова высока вероятность ошибки, и процесс этот при слишком большом массиве может повторяться до бесконечности.
С другой стороны, пакеты имеют преимущества и перед побайтовой (8 бит) или пословной (16 бит или 32 бита) передачей информации, так как увеличивается полезная загрузка сети за счет уменьшения требуемого количества служебной информации. Это же относится и к маленьким пакетам длиной в несколько байт. Ведь каждый передаваемый по сети пакет обязательно содержит в себе биты, относящиеся непосредственно к обмену по сети (стартовые биты, биты адресации, биты типа и номера пакета и т.д.). При маленьких пакетах доля этой служебной информации будет непозволительно высокой, что приведет к снижению интегральной (средней) скорости обмена информацией между абонентами сети.
Существует некоторая оптимальная длина пакета (или оптимальный диапазон длин пакетов), при которой средняя скорость обмена информацией по сети будет максимальна. Эта длина не является неизменной величиной, она зависит и от уровня помех, и от метода управления обменом, и от количества абонентов сети, и от характера передаваемой информации, и от многих других факторов.
Структура пакета определяется прежде всего аппаратурными особенностями данной сети, выбранной топологией и типом среды передачи информации, а также существенно зависит от используемого протокола (порядка обмена информацией). Строго говоря, в каждой сети структура пакета индивидуальна. Но существуют некоторые общие принципы формирования пакета, определяемые характерными особенностями обмена информацией по любым локальным сетям.
Чаще всего пакет содержит в себе следующие основные поля или части (рис. 3.1):
Рис. 3.1. Типичная структура пакета
Стартовая комбинация, или преамбула, которая обеспечивает настройку аппаратуры адаптера или другого сетевого устройства на прием и обработку пакета. Это поле может отсутствовать или сводиться к одному-единственному стартовому биту. Сетевой адрес (идентификатор) принимающего абонента, то есть индивидуальный или групповой номер, присвоенный каждому принимающему абоненту в сети. Этот адрес позволяет приемнику распознать пакет, адресованный ему лично, группе, в которую он входит, или всем абонентам сети одновременно. Сетевой адрес (идентификатор) передающего абонента, то есть индивидуальный или групповой номер, присвоенный каждому передающему абоненту. Этот адрес информирует принимающего абонента, откуда пришел данный пакет. Включение в пакет адреса передатчика необходимо в том случае, когда одному приемнику могут попеременно приходить пакеты от разных передатчиков. Служебная информация, которая указывает на тип пакета, его номер, размер, формат, маршрут его доставки, на то, что с ним надо делать приемнику и т.д. Данные - та информация, ради передачи которой используется данный пакет. Правда, существуют специальные управляющие пакеты, которые не имеют поля данных. Их можно рассматривать как сетевые команды. Пакеты, включающие поле данных, называются информационными пакетами. Управляющие пакеты могут выполнять функцию начала сеанса связи, конца сеанса связи, подтверждения приема информационного пакета, запроса информационного пакета и т.д. Контрольная сумма пакета - это числовой код, формируемый передатчиком по определенным правилам и содержащий в свернутом виде информацию обо всем пакете. Приемник, повторяя вычисления, сделанные передатчиком, с принятым пакетом, сравнивает их результат с контрольной суммой и делает вывод о правильности или ошибочности передачи пакета. Если пакет ошибочен, то приемник запрашивает его повторную передачу. Стоповая комбинация служит для информирования аппаратуры принимающего абонента об окончании пакета, обеспечивает выход аппаратуры приемника из состояния приема. Это поле может отсутствовать, если используется самосинхронизирующийся код, позволяющий детектировать факт передачи пакета.Нередко в структуре пакета выделяют всего три поля:
Начальное управляющее поле пакета (или заголовок пакета), то есть поле, включающее в себя стартовую комбинацию, сетевые адреса приемника и передатчика, а также служебную информацию. Поле данных пакета. Конечное управляющее поле пакета (или заключение, трейлер), включающее в себя контрольную сумму и стоповую комбинацию, а также, возможно, служебную информацию.Помимо термина «пакет» в литературе также используется термин «кадр». Иногда под этими терминами имеется в виду одно и то же, но иногда подразумевается, что кадр вложен в пакет. В этом случае все перечисленные поля кадра, кроме преамбулы и стоповой комбинации, относятся к кадру. В пакет может также входить признак начала кадра (в конце преамбулы). Такая терминология принята, например, в сети Ethernet. Но надо всегда помнить, что физически по сети передается все-таки не кадр, а пакет (если, конечно, различать два эти понятия), и именно передача пакета, а не передача кадра, соответствует занятости сети."
Рис. 3.2. Пример обмена пакетами при сеансе связи
В процессе сеанса обмена информацией по сети между передающим и принимающим абонентами происходит обмен информационными и управляющими пакетами по установленным правилам, называемым протоколом обмена. Пример простейшего протокола показан на рис. 3.2. В данном случае сеанс связи начинается с запроса готовности приемника принять данные. В случае, когда приемник готов, он посылает в ответ управляющий пакет «Готовность». Если приемник не готов, он отказывается от сеанса другим управляющим пакетом. Затем начинается собственно передача данных. При этом на каждый полученный пакет данных приемник отвечает пакетом подтверждения. В случае, когда пакет передан с ошибками, приемник запрашивает повторную передачу. Заканчивается сеанс управляющим пакетом, которым передатчик сообщает о разрыве связи. Существует множество стандартных протоколов, которые используют как передачу с подтверждением (с гарантированной доставкой пакета), так и передачу без подтверждения (без гарантии доставки пакета).
При реальном обмене по сети используются многоуровневые протоколы, каждый из которых предполагает свою структуру кадра (свою адресацию, свою управляющую информацию, свой формат данных и т.д.). Ведь протоколы высоких уровней имеют дело с такими понятиями, как файл-сервер или приложение, запрашивающее данные у другого приложения, и вполне могут не иметь представления ни о типе аппаратуры сети, ни о методе управления обменом. Все кадры более высоких уровней последовательно вкладываются в передаваемый пакет, точнее, в поле данных передаваемого пакета (рис. 3.3). Каждый следующий вкладываемый кадр может содержать свою собственную служебную информацию, располагающуюся как до данных (заголовок), так и после данных (трейлер), причем ее назначение может быть самым различным. Естественно, доля вспомогательной информации в пакетах при этом возрастает с каждым следующим уровнем, что снижает эффективную скорость передачи данных. Поэтому для увеличения этой скорости лучше, чтобы протоколы обмена были как можно проще, и чтобы уровней этих протоколов было как можно меньше. Иначе никакая скорость передачи битов не поможет, и быстрая сеть может передавать, к примеру, какой-нибудь файл дольше, чем медленная сеть, которая пользуется более простым протоколом.
Рис. 3.3. Многоуровневая система вложения кадров
Каждый абонент (узел) локальной сети должен иметь свой уникальный адрес (он же идентификатор, МАС-адрес), чтобы ему можно было адресовать пакеты. Существуют две основные системы присвоения адресов абонентам сети (точнее, сетевым адаптерам этих абонентов).
Первая система элементарно проста. Она сводится к тому, что при установке сети каждому абоненту присваивается свой адрес (программно или с помощью переключателей на плате адаптера). При этом требуемое количество разрядов адреса определяется из простого уравнения:
2n>Nmax,
где п — количество разрядов адреса, a Nmax - максимально возможное количество абонентов в сети. Например, восьми разрядов адреса достаточно для сети из 255 абонентов. Один адрес (обычно 1111....11) отводится для широковещательной передачи, то есть используется для пакетов, адресованных всем абонентам одновременно. Именно этот подход использо-
ван в такой известной сети, как Arcnet. Достоинства данного подхода -простота и малый объем служебной информации в пакете, а также простота аппаратуры адаптера, распознающей адрес пакета. Недостаток -трудоемкость задания адресов и возможность ошибки (например, двум абонентам сети может быть присвоен один и тот же адрес).
Второй подход к адресации был разработан международной организацией IEEE, занимающейся стандартизацией сетей. Именно он используется в большинстве сетей и рекомендован для всех новых разработок. Идея состоит в том, чтобы присваивать уникальный сетевой адрес каждому адаптеру сети еще на этапе его изготовления. Если количество возможных адресов будет достаточно большим, то можно быть уверенным, что в любой сети не будет абонентов с одинаковыми адресами. Был выбран 48-битный формат адреса, что соответствует примерно 280 триллионам различных адресов. Понятно, что столько сетевых.адаптеров никогда не будет выпущено.
Рис. 3.4. Структура 48-битного стандартного адреса
Чтобы распределить возможные диапазоны адресов между многочисленными изготовителями сетевых адаптеров, была предложена следующая структура адреса (рис. 3.4):
Младшие 24 разряда кода адреса называются OUA (Organizationally Unique Address) - организационно уникальный адрес. Именно их присваивает производитель сетевого адаптера. Всего возможно свыше 16 миллионов комбинаций. Следующие 22 разряда кода называются OUI (Organizationally Unique Identifier) - организационно уникальный идентификатор. IEEE присваивает один или несколько ОШ каждому производителю сетевых адаптеров. Это позволяет исключить совпадения адресов адаптеров от разных производителей. Всего возможно свыше 4 миллионов разных OUI. Вместе 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, lOOVG-AnyLAN. Ее недостатки - высокая сложность аппаратуры сетевых адаптеров, а также большая доля служебной информации в передаваемом пакете (адрес источника и адрес приемника требуют уже 96 битов пакета, или 12 байт).
Во многих сетевых адаптерах предусмотрен так называемый циркулярный режим. В этом режиме адаптер принимает все пакеты, приходящие к нему, независимо от значения поля адреса приемника. Этот режим используется, например, для проведения диагностики сети, измерения ее производительности, контроля за ошибками передачи. В этом случае один компьютер принимает и контролирует все пакеты, проходящие по сети, но сам ничего не передает. В этом же режиме работают сетевые адаптеры мостов и коммутаторы, которые должны обрабатывать перед ретрансляцией все приходящие к ним пакеты.
Сеть всегда объединяет несколько абонентов, каждый из которых имеет право передавать свои пакеты. Но по одному кабелю не может одновременно передаваться два пакета, иначе возможен конфликт (коллизия), что приведет к искажению и потере обоих пакетов. Значит, надо каким-то образом установить очередность доступа к сети (захвата сети) всеми абонентами, желающими передавать. Это относится прежде всего к сетям с топологиями «шина» и «кольцо». Точно так же при топологии «звезда» необходимо установить очередность передачи пакетов периферийными абонентами, иначе центральный абонент просто не сможет справиться с их обработкой.
Поэтому в любой сети применяется тот или иной метод управления обменом (он же метод доступа, он же метод арбитража), разрешающий или предотвращающий конфликты между абонентами. От эффективности выбранного метода зависит очень многое: скорость обмена информацией между компьютерами, нагрузочная способность сети, время реакции сети на внешние события и т.д. Метод управления - это один из важнейших параметров сети. Тип метода управления обменом во многом определяется особенностями топологии сети, но в то же время он и не привязан жестко к топологии.
Методы управления обменом делятся на две группы:
Централизованные методы, при которых все управление сосредоточенно в одном месте. Недостатки таких методов: неустойчивость к отказам центра, малая гибкость управления. Достоинство - отсутствие конфликтов. Децентрализованные методы, при которых отсутствует центр управления. Главные достоинства таких методов: высокая устойчивость к отказам и большая гибкость. Однако возможны конфликты, которые надо разрешать.Существует и другое деление методов управления обменом, относящееся, главным образом, к децентрализованным методам:
Детерминированные методы определяют четкие правила, по которым чередуются захватывающие сеть абоненты. Абоненты имеют ту или иную систему приоритетов, причем приоритеты эти различны для всех абонентов. При этом, как правило, конфликты полностью исключены (или маловероятны), но некоторые абоненты могут дожидаться своей очереди слишком долго. К детерминированным методам относится, например, маркерный доступ, при котором право передачи передается по эстафете от абонента к абоненту. Случайные методы подразумевают случайное чередование передающих абонентов. В этом случае возможность конфликтов подразумевается, но предлагаются способы их разрешения. Случайные методы работают хуже, чем детерминированные, при больших информационных потоках в сети (при большом трафике сети) и не гарантируют абоненту величину времени доступа (это интервал между возникновением желания передавать и получением возможности передать свой пакет). Пример случайного метода - CSMA/CD.Рассмотрим три наиболее типичных метода управления обменом, характерных для трех основных топологий.
Для топологии «звезда» наиболее органично подходит централизованный метод управления, причем в данном случае не слишком важно, что находится в центре звезды: компьютер (центральный абонент), как на рис. 1.2, или же специальный концентратор, управляющий обменом, но сам не участвующий в нем (рис. 1.5). Именно эта вторая ситуация реализована в ceти 100VGAnyLAN.
Самый простой централизованный метод состоит в следующем.
Абоненты, желающие передать свой пакет (или, как еще говорят, имеющие заявки на передачу), посылают центру свои запросы. Центр же предоставляет им право передачи пакета в порядке очередности, например, по их физическому расположению по часовой стрелке. После окончания передачи пакета каким-то абонентом право передавать получит следующий по порядку (по часовой стрелке) абонент, имеющий заявку на передачу (рис. 3.5).
В этом случае говорят, что абоненты имеют географические приоритеты (по их физическому расположению). В каждый конкретный момент наивысшим приоритетом обладает следующий по порядку абонент, но в пределах полного цикла опроса ни один из абонентов не имеет никаких преимуществ перед другими. Никому не придется ждать своей очереди слишком долго. Максимальная величина времени доступа для любого абонента в этом случае будет равна суммарному времени передачи пакетов всех абонентов сети, кроме данного. Для топологии, показанной на рис. 3.5, она составит четыре длительности пакета. Никаких столкновений пакетов при данном методе быть не может в принципе, так как все решения о доступе принимаются в одном месте.
Рис. 3.5. Централизованный метод управления обменом в сети с топологией «звезда»
Возможен и другой принцип реализации централизованного управления.
В этом случае центр посылает запросы (управляющие пакеты) по очереди всем периферийным абонентам. Тот периферийный абонент, который хочет передавать (первый из опрошенных) посылает ответ (или же сразу начинает передачу). В дальнейшем сеанс обмена проводится именно с ним. После окончания этого сеанса центральный абонент продолжает опрос периферийных абонентов по кругу. Если же хочет передать центральный абонент, он передает без всякой очереди тому, кому хочет.
Как в первом, так и во втором случае никаких конфликтов быть не может (все решения принимает единый центр, которому не с кем конфликтовать). Если все абоненты очень активны и заявки на передачу поступают интенсивно, то все они будут передавать строго по очереди. Но центр должен быть исключительно надежен, иначе будет парализован весь обмен. Механизм управления не слишком гибок, так как центр работает по жестко заданному алгоритму. К тому же скорость управления невысока. Ведь даже в случае, когда все время передает только один абонент, ему все равно приходится ждать после каждого переданного пакета, пока центр опросит всех остальных абонентов.
В принципе при топологии «шина» возможно точно такое же централизованное управление, как и в случае звезды. При этом один из абонентов («центральный») посылает всем остальным («периферийным») запросы, выясняя, кто из них хочет передать, затем разрешает передачу одному из абонентов. После окончания передачи передававший абонент сообщает «центру», что он закончил передачу, и «центр» снова начинает опрос (рис. 3.6).
Все преимущества и недостатки такого управления - те же самые, что и в случае звезды. Единственное отличие состоит в том, что центр здесь не пересылает информацию от одного абонента к другому, как в топологии «активная звезда», а только управляет обменом.
Однако гораздо чаще в шине используется децентрализованное случайное управление, так как все сетевые адаптеры всех абонентов в данном случае одинаковы. При выборе децентрализованного управления все абоненты также имеют равные права доступа к сети, то есть особенности топологии совпадают с особенностями метода управления. Решение о том, когда можно передавать свой пакет, принимается каждым абонентом на месте, исходя только из анализа состояния сети. В данном случае существует конкуренция между абонентами за захват сети и, следовательно, возможны конфликты между ними и искажения передаваемых данных из-за наложения пакетов.
Рис. 3.6. Централизованное управление в сети с топологией «шина»
Существует множество алгоритмов доступа или, как еще говорят, сценариев доступа, порой очень сложных. Их выбор зависит от скорости передачи в сети, от длины шины, загруженности сети (интенсивности обмена или трафика сети), от используемого кода передачи. Отметим, что иногда для управления доступом к шине используется дополнительная линия связи, что упрощает аппаратуру контроллеров и методы доступа, но обычно заметно увеличивает стоимость сети в целом за счет удвоения длины кабеля и количества приемопередатчиков. Поэтому данное решение не получило широкого распространения.
Суть всех случайных методов управления обменом довольно проста. Пока сеть занята, то есть по ней идет передача пакета, абонент, желающий передавать, ждет освобождения сети. Ведь в противном случае неминуемо исказятся и пропадут оба пакета. После освобождения сети абонент, желающий передавать, начинает свою передачу. Если одновременно с ним начали передачу еще несколько абонентов, то возникает коллизия (конфликт, столкновение пакетов). Конфликт этот детектируется всеми абонентами, передача прекращается, и через некоторое время предпринимается повторная попытка передачи. При этом не исключены повторные коллизии и новые попытки передать свой пакет. И так продолжается до тех пор, пока пакет не будет передан без коллизий.
Существует несколько разновидностей случайных методов управления обменом. В некоторых из них не все передающие абоненты распознают коллизию, а только те, которые имеют меньшие приоритеты. Абонент с максимальным приоритетом из всех, начавших передачу, закончит передачу своего пакета без ошибок. В некоторых случайных методах управления обменом каждый абонент начинает свою передачу после освобождения сети не сразу, а выдержав свою, строго индивидуальную задержку. Максимальным приоритетом будет обладать абонент с минимальной задержкой. Но хотя в обоих случаях имеется система приоритетов, методы все-таки относятся к случайным, так как исход конкуренции невозможно предсказать.
Чаще всего система приоритетов отсутствует полностью, и после обнаружения коллизии абоненты выбирают задержку до следующей попытки передачи по случайному закону. Именно так работает стандартный метод управления обменом CSM A/CD (Carrier Sense Multiple Access with Collision Detection), используемый в самой популярной сети Ethernet. Его главное достоинство в том, что все абоненты полностью равноправны, и ни один из них не может надолго заблокировать обмен другому (как в случае наличия приоритетов). Подробнее метод CSMA/CD будет рассмотрен в специальной главе.
Понятно, что все подобные методы будут хорошо работать только при не слишком большой интенсивности обмена по сети. Считается, что приемлемое качество связи обеспечивается только при нагрузке не выше 30-40% (то есть сеть занята не более 30-40% всего времени). При большей нагрузке становятся слишком частыми повторные столкновения, и наступает так называемый коллапс, или крах сети, представляющий собой резкое падение ее производительности. Недостаток всех подобных методов еще и в том, что они не гарантируют величину времени доступа к сети, которая зависит не только от выбора задержки между попытками передачи, но и от общей загруженности сети. Поэтому, например, в сетях, выполняющих задачи управления оборудованием (на производстве, в научных лабораториях), где требуется быстрая реакция на внешние события, сети со случайными методами управления используются довольно редко.
При любом случайном методе управления обменом возникает вопрос о том, какой должна быть минимальная длительность пакета, чтобы коллизию обнаружили все начавшие передавать абоненты. Ведь сигнал по любой физической среде распространяется не мгновенно, и при больших размерах сети (как еще говорят, при большом диаметре сети) задержка распространения может составлять десятки и сотни микросекунд, и информацию об одновременно происходящих событиях разные абоненты получают не одновременно. Чтобы ответить на этот вопрос, обратимся к рис. 3.7.
Рис. 3.7. Расчет минимальной длительности пакета
Пусть L — полная длина сети, V - скорость распространения сигнала в используемом кабеле. Допустим, абонент 1 закончил свою передачу, а абоненты 2 и 3 захотели передавать во время передачи абонента 1. После освобождения сети абонент 3 узнает об этом событии и .начинает свою передачу через временной интервал прохождения сигнала по всей длине сети, то есть через время L/V, а абонент 2 начнет передавать сразу после освобождения сети. Пакет от абонента 3 дойдет до абонента 2 еще через временной интервал L/V после начала передачи абонентом 3 (обратный путь сигнала). К этому моменту передача пакета абонентом 2 ни в коем случае не должна еще закончиться, иначе абонент 2 так и не узнает о столкновении пакетов (о коллизии).
Поэтому получается, что минимально допустимая длительность пакета в сети должна составлять 2L/ V, то есть должна равняться удвоенному времени распространения сигнала по полной длине сети (или по пути наибольшей длины в сети). Это время называется двойным или круговым временем задержки сигнала в сети, или PDV (Path Delay Value). Отметим, что этот же временной интервал можно рассматривать как универсальную меру одновременности любых событий в сети.
Отдельно стоит остановиться на том, как сетевые адаптеры распознают коллизию, то есть столкновение пакетов. Ведь простое сравнение передаваемой абонентом информации с той, которая реально присутствует в сети, возможно только в случае самого простого кода NRZ, используемого довольно редко. При применении кода Манчестер-П, который обычно подразумевается в случае метода управления обменом CSMA/CD, требуется принципиально другой подход.
Как уже отмечалось, сигнал в коде Манчестер-П всегда имеет постоянную составляющую, равную половине размаха сигнала (если один из двух уровней сигнала нулевой). Однако в случае столкновения двух и более пакетов (коллизии) это правило выполняться не будет. Постоянная составляющая суммарного сигнала в сети будет обязательно больше или меньше половины размаха (рис. 3.8). Ведь пакеты всегда отличаются друг от друга и к тому же сдвинуты друг относительно друга во времени. Именно по выходу уровня постоянной составляющей за установленные пределы и определяет каждый сетевой адаптер наличие коллизии в сети.
Рис. 3.8. Определение факта коллизии при использовании кода Манчестер-II
Кольцевая топология имеет свои особенности при выборе метода управления обменом. В этом случае важно то, что любой пакет, посланный по кольцу, последовательно пройдя всех абонентов, через некоторое время возвратится в ту же точку, к тому же абоненту (так как топология замкнутая), то есть нет одновременного распространения сигнала в две стороны, как в топологии «шина». Отметим, что сети с топологией «кольцо» бывают однонаправленными и двунаправленными. Мы будем здесь рассматривать только однонаправленные, как более распространенные.
Рис. 3.9. Маркерный метод управления обменом
(СМ-свободный маркер, ЗМ— занятый маркер, МП— занятый маркер с подтверждением, ПД—пакет данных)
В принципе, в сети с топологией «кольцо» можно использовать различные централизованные методы управления (как в звезде), можно применять также методы случайного доступа (как в шине), но чаще выбирают все-таки специфические методы управления, в наибольшей степени соответствующие именно особенностям кольца. Наиболее популярны в этом случае маркерные (эстафетные) методы управления, то есть те, которые используют маркер (эстафету) - небольшой управляющий пакет специального вида. Именно эстафетная передача маркера по кольцу позволяет передавать право на захват сети от одного абонента к другому. Маркерные методы относятся к децентрализованным и детерминированным методам управления обменом в сети. В них нет явно выраженного центра, но существует четкая система приоритетов, и потому не бывает конфликтов.
Рассмотрим работу маркерного метода управления в сети с топологией кольцо (рис. 3.9).
По кольцу непрерывно ходит специальный пакет, маркер, предоставляющий абонентам право передавать свой пакет. Алгоритм действий абонентов включает в себя следующее:
Абонент 1, желающий передать свой пакет, должен дождаться прихода к нему свободного маркера. Затем он присоединяет к маркеру свой пакет, помечает маркер как занятый и отправляет эту посылку следующему по кольцу абоненту. Все остальные абоненты (2, 3, 4), получив маркер с присоединенным пакетом, проверяют, им ли адресован пакет. Если пакет адресован не им, то они передают полученную посылку (маркер + пакет) дальше по кольцу. Если какой-то абонент (в нашем случае это будет абонент 3) распознает пакет как адресованный ему, то он принимает этот пакет, устанавливает в маркере бит подтверждения приема и передает посылку (маркер + пакет) дальше по кольцу. Передававший абонент 1 получает свою посылку, прошедшую по всему кольцу, обратно, помечает маркер как свободный, удаляет из сети свой пакет и посылает свободный маркер дальше по кольцу. Абонент, желающий передавать, ждет этого маркера, и все повторяется снова.Приоритет при данном методе управления получается географический, то есть право передачи после освобождения сети переходит к следующе- „ му по направлению кольца абоненту от последнего передававшего абонента. Но эта система приоритетов работает только при большой интенсивности обмена. При малой интенсивности обмена все абоненты равноправны, и время доступа к сети каждого из них определяется только положением маркера в момент возникновения заявки на передачу.
В чем-то рассматриваемый метод похож на метод опроса (централизованный), хотя явно выделенного центра здесь не существует. Однако некоторый центр обычно все-таки должен присутствовать: один из абонентов (или специальное устройство) должен следить, чтобы маркер не потерялся в процессе прохождения по кольцу (например, из-за действия помех или сбоя в работе какого-то абонента). В противном случае механизм доступа работать не будет. Следовательно, надежность управления в данном случае снижается (выход центра из строя приводит к полной дезорганизации обмена), поэтому обычно применяются специальные средства для повышения надежности, восстановления центра контроля за маркером.
Основное преимущество данного метода перед CSMA/CD состоит в том, что здесь гарантирована величина времени доступа. Его величина составит (N - 1) t , где N - полное число абонентов в сети, tnK — время прохождения пакета по кольцу. Вообще маркерный метод управления обменом гораздо эффективнее случайных методов при большой интенсивности обмена в сети (при загруженности более 30-40%). Он позволяет сети работать с большей нагрузкой, которая теоретически может приближаться к 100%.
Метод маркерного доступа может использоваться не только в кольце (например, в сети IBM Token Ring или FDDI), но и в шине (например, сеть Arcnet-BUS), и в пассивной звезде (например, сеть Arcnet-STAR). В этих случаях реализуется не физическое, а логическое кольцо, то есть все абоненты последовательно передают друг другу маркер, и эта цепочка передачи маркеров замкнута в кольцо. При этом совмещаются достоинства физической топологии «шина» и маркерного метода управления.