Методы доступа и кадры для сетей Ethernet, Token Ring, ARCNet и FDDI

Обработку кадров, передаваемых по сети, выполняют сетевой адаптер, устанавливаемый в слот расширения станции, и соответствующий ему драйвер.

Сетевой адаптер (СА) и драйвер СА реализуют следующие функции:

В зависимости от поддерживаемого метода доступа и типа кадра сетевые адаптеры можно разделить на несколько групп: Ethernet, Token Ring, ARCNet, FDDI и др. Сети, где устанавливаются перечисленные адаптеры, имеют те же названия: сети Ethernet, сети Token Ring и т. д. Следует отметить, что рассматриваемые СА поддерживают разные методы доступа и типы кадров, поэтому они не совместимы между собой. Следовательно, на станциях, подключаемых к одному сегменту сети, необходимо устанавливать сетевые адаптеры одного типа.

Ниже рассматриваются методы доступа и кадры для сетей Ethernet, Token Ring, ARCNet и FDDI.

Метод доступа и кадры для сетей Ethernet

На логическом уровне в Ethernet применяется топология шина:

Стандарты Ethernet поддерживают метод доступа CSMA/CD (Carrier Sense Multiple Access / Collision Detection) и обеспечивают скорость передачи по шине 10 Мбит/с и 100 Мбит/с. По-русски этот метод доступа называется "Множественный доступ с контролем несущей и обнаружением коллизий". Ниже приводится краткое описание этого метода доступа.

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

Если при передаче кадра произошла коллизия (т. е. несущая частота изменилась на величины f2(f1), то станция прекращает передавать данные и выда╦т специальную последовательность из 32 битов, которая позволяет всем станциям определить, что произошла коллизия. Затем станция переходит в состояние ожидания на небольшой случайный промежуток времени, по окончании которого она, проверив среду, пытается ещ╦ раз передать по сети свой кадр. Если за 16 попыток станции не удается передать свои данные, то считается, что среда недоступна.

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

Существует четыре основные разновидности кадров Ethernet (рисунок 2.28). NetWare все их поддерживает.

Ethernet_II Ethernet_802.3 Ethernet_802.2 Ethernet_SNAP

P7P7P7P7
SFD1SFD1SFD1SFD1
DA6DA6DA6DA6
SA6SA6SA6SA6
Type2Length2Length2Length2
Пакет
 
 
DSAP1DSAP1
 
 
 
SSAP1SSAP1
46-
 
46-Control1Control1
1500
 
1500Пакет
 
OUI3
 
 
 
 
43 -ID2
 
 
 
 
1497Пакет38-
 
 
 
 
 
 
1495
FCS4FCS4FCS4FCS4

Рис. 2.28. Типы кадров для сетей Ethernet

Цифры на рисунке обозначают длины полей кадров (в байтах). Здесь введены следующие обозначения.

P - преамбула. Представляет собой семибайтовую последовательность единиц и нулей (101010....). Это поле предназначено для синхронизации при╦мной и передающей станций.

SFD (Start Frame Delimiter) - признак начала кадра (10101011),

DA (Destination Address), SA (Source Address) - адреса получателя и отправителя. Они представляют собой физические адреса сетевых адаптеров Ethernet и являются уникальными. Первые три байта адреса назначаются каждому производителю Ethernet-адаптеров (для адаптеров фирмы Intel это будет значение 00AA00h, а для адаптеров 3Com - 0020afh), последние три байта определяются самим производителем. Для широковещательных кадров поле DA устанавливается в FFFFFFFFh.

FCS (Frame Check Sequence) - контрольная сумма всех полей кадра (за исключением полей преамбулы, признака начала кадра и самой контрольной суммы). Если длина пакета передаваемых данных меньше минимальной величины, то адаптер Ethernet автоматически дополняет его до 46 байтов. Этот процесс называется выравниванием (padding). Ж╦сткие ограничения на минимальную длину пакета были введены для обеспечения нормальной работы механизма обнаружения коллизий.

Теперь рассмотрим специфичные поля каждого типа кадра.

Ethernet_II

Этот тип кадра был разработан первым для сетей Ethernet. Дополнительно содержит следующее поле:

Type - определяет тип протокола сетевого уровня, пакет которого переносится этим кадром (8137h - для протокола IPX, 0800h - для протокола IP, 809Bh - для протокола AppleTalk и т. д.). Все идентификаторы имеют значения старше 05bch.

Ethernet_802.3

Этот тип кадра был создан фирмой Novell и является базовым для сетей с ОС NetWare 3.11. Дополнительно содержит следующее поле:

Length - длина передаваемого пакета.

Поскольку в этом кадре отсутствует поле с типом протокола, то он может быть использован только для переноса IPX. Заголовок пакета IPX (рисунок 2.14) следует непосредственно за полем длины, поэтому первое поле пакета (поле Checksum) содержит значение FFFFh.

Ethernet_802.2

Этот тип кадра разработан подкомитетом IEEE 802.3 в результате стандартизации сетей Ethernet. Этот кадр содержит следующие дополнительные поля:

Length - длина передаваемого пакета,

DSAP (Destination Service Access Point) - тип протокола сетевого уровня станции-получателя (E0h - для IPX),

SSAP (Source Service Access Point) - тип протокола сетевого уровня станции-отправителя,

Control - номер сегмента; используется при разбиении длинных IP-пакетов на более мелкие сегменты; для пакетов IPX это поле всегда содержит значение 03h (обмен ненумерованными датаграммами).

Ethernet_SNAP

Этот кадр является модернизацией кадра Ethernet_802.2 и содержит ещ╦ два поля: OUI (Organizational Unit Identifier) и ID, которые определяют тип протокола верхнего уровня SNAP Protocol ID.

Каждая станция начинает принимать кадр с преамбулы Р. Затем сравнивает значение адреса DA со своим адресом. Если адреса одинаковы, или приш╦л широковещательный кадр, или задана специальная программа обработки, то кадр копируется в буфер станции. Если нет, то кадр игнорируется.

Ниже привед╦н алгоритм идентификации типа кадра сетевым адаптером:

Метод доступа и кадры для сетей Token Ring

Адаптеры Token Ring поддерживают метод доступа Token Ring (маркерное кольцо) и обеспечивают скорости передачи 4 Мбит/с или 16 Мбит/с. Ниже перечислены основные положения этого метода:

Data/Command Frame Token Abort

SD1SD1SD1
 
AC1AC1ED1
 
FC1ED1
 
 
 
DA6
 
 
 
 
 
SA6
 
 
 
 
 
Пакетдо 4202
 
 
 
 
 
 
 
 
 
 
 
 
FCS4
 
 
 
 
 
ED1
 
 
 
 
 
FS1
 
 
 
 
 

Рис. 2.29. Типы кадров для сетей Token Ring

Этот метод доступа излагается при обсуждении кадров Token Ring в конце данного пункта.

В сетях Token Ring используются три основных типа кадров (рисунок 2.29):

Цифры на рисунке обозначают длины полей кадров (в байтах). Здесь введены следующие обозначения полей:

SD (Start Delimiter) - признак начала кадра. Синхронизирует работу при╦мника и передатчика, подготавливает станцию к при╦му пакета.

AC (Access Control) - поле управления доступом. Содержит поле приоритета Р (3 бита), поле маркера Т (1 бит), поле монитора М (1 бит) и рабочее поле R (3 бита). Поясним назначение полей Р, Т и М.

  1. Поле Р (Priority). Предположим, что станции WS1, WS2 и WS3 связаны в кольцо. Пусть у станции WS2 есть данные для передачи с приоритетом 5. В это время через не╦ проходит кадр (например, данные от WS1), где в поле AC установлен приоритет 3 (поле Р). Тогда WS2 запоминает старое значение Р (=3), устанавливает в Р новое значение (=5, т. е. более высокий уровень) и ретранслирует кадр дальше. По кольцу этот кадр возвращается к станции-отправителю WS1. Она, обнаружив в поле Р значение 5, формирует кадр Token (маркер) со значением поля Р, равным 5, и направляет этот кадр по кольцу. Таким образом, станция WS2 получит право на передачу, поскольку у не╦ самый высокий приоритет. Передав данные, WS2 сформирует и передаст кадр Token с приоритетом 5. Если ни одна станция в сети не имеет данных с таким приоритетом, то маркер (кадр Token) верн╦тся на WS2. Эта станция "вспомнит", что в сво╦ время увеличила приоритет, и уменьшит его, изменив значение Р в поле AС с 5 на 3. Затем маркер с приоритетом 3 будет передан в сеть.
  2. Поле Т (Token). Этот бит равен 1, если это кадр Data/Command Frame, и равен 0, если это кадр Token.
  3. Поле М (Monitor). При первом проходе станция-монитор устанавливает этот бит в 1. Если затем она получает по кольцу этот кадр с битом М=1, то считает, что станция-отправитель неисправна и удаляет этот кадр из сети.

FC (Frame Control) - поле кадра управления. Для кадра управления в этом поле содержится команда управления. Это может быть команда инициализации кольца, команда проверки адресов устройств и т. п.

DA (Destination Address) - адрес при╦мника. Это может быть broadcast-, multicast- или unicast-адрес.

SA (Source Address) - адрес источника.

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

FCS (Frame Check Sequence) - контрольная сумма, вычисленная для полей FC, DA, SA, Пакет.

ED (End Delimiter) - конечный ограничитель кадра. Кроме этого один бит в этом поле используется для индикации, что этот кадр является последним в логической цепочке. Ещ╦ один бит изменяется при╦мником при обнаружении ошибки после сравнения контрольной суммы со значением в поле FCS.

FS (Frame Status) - поле статуса кадра. Состоит из полей A (Address Resolution) и C (Frame Copied). Передающая станция устанавливает эти поля в 0, а принимающая станция изменяет их в соответствии с результатами при╦ма кадра и ретранслирует кадр дальше по сети. Когда кадр возвращается на станцию-передатчик, выполняется проверка полей A и С (таблица 2.12), и кадр удаляется из кольца.

Таблица 2.12. Значения полей А и С

АСОписание
00Станция-при╦мник не доступна в данный момент.
10Станция-при╦мник обнаружила ошибку в кадре. Передача кадра повторяется.
01Недопустимая комбинация битов.
11Передача выполнена успешно.

Ниже приведено краткое описание метода доступа Token Ring.

Управление станциями в сети происходит с помощью передачи специального кадра Token - маркера (рисунок 2.29). Станция, которая приняла маркер, получает право на передачу и может передавать данные. Для этого станция удаляет маркер из кольца, формирует кадр данных и переда╦т его следующей станции. В сети Token Ring все станции принимают и ретранслируют все кадры, проходящие по кольцу. При при╦ме станция сравнивает поле адреса кадра (DA) с собственным адресом. Если адреса не совпадают, то кадр переда╦тся далее по кольцу без изменений. Если адреса совпадают, или принят кадр с broadcast-адресом, то содержимое копируется в буфер станции, а по результатам при╦ма вносятся изменения в поле статуса кадра (FS). Затем кадр переда╦тся далее по сети и, таким образом, возвращается на станцию-отправитель. Получив кадр, станция-отправитель проверяет поле статуса кадра (FS) (таблица 2.12), формирует маркер и переда╦т его следующей станции. Таким образом, следующая станция получает право на передачу данных.

Метод доступа и кадры для сетей ARCNet

При подключении устройств в ARCNet применяют топологию шина или звезда. Адаптеры ARCNet поддерживают метод доступа Token Bus (маркерная шина) и обеспечивают производительность 2,5 Мбит/с. Этот метод предусматривает следующие правила:

Этот метод доступа излагается после рассмотрения кадров ARCNet.

В сетях ARCNet используется асинхронный метод передачи данных (в сетях Ethernet и Token Ring применяется синхронный метод). Т. е. передача каждого байта в ARCNet выполняется посылкой ISU (Information Symbol Unit - единица передачи информации), состоящей из тр╦х служебных старт/стоповых битов и восьми битов данных.

В ARCNet определены 5 типов кадров (рисунок 2.30):

ITT FBE DATA ACK NAK

AB1AB1AB1AB1AB1
EOT1ENQ1SOH1ACK1NAK1
DID2DID2SID1
 
 
 
 
 
 
DID2
 
 
 
 
 
 
 
COUNT2
 
 
 
 
 
 
 
Пакет1-508
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
CRC2
 
 
 
 

Рис. 2.30. Типы кадров для сетей ARCNet

Цифры на рисунке 2.30 обозначают длины полей кадров (в байтах). На рисунке введены следующие обозначения полей:

AB (Alert Burst) - начальный разделитель. Он выполняет функции преамбулы кадра.

EOT (End Of Transmit) - символ конца передачи.

DID (Destination Identification) - адрес при╦мника (ID при╦мника). Если в поле заносится значение 00h, то кадр обрабатывается всеми станциями.

ENQ (ENQuiry) - символ запроса о готовности к при╦му данных.

SOH (Start Of Header) - символ начального заголовка.

SID (Source Identification) - адрес источника (ID источника).

COUNT = 512-N, где N - длина пакета в байтах.

CRC - контрольная сумма.

ACK (ACKnowledgments) - символ готовности к при╦му данных.

NAK (Negative ACKnowledgments) - символ не готовности к при╦му данных.

Ниже приведено описание метода доступа Token Bus.

Все станции в сети ARCNet определяются 8-битовым ID (Identification - физический адрес сетевого адаптера). Этот адрес устанавливается переключателями на плате.

В сети ARCNet очер╦дность передачи данных определяется физическими адресами станций (ID). Первой является станция с наибольшим адресом, затем следует станция с наименьшим адресом, далее - в порядке возрастания адресов. Каждая станция знает адрес следующей за ней станции (NextID или NID). Этот адрес определяется при выполнении процедуры реконфигурации системы. Выполнив передачу данных, станция переда╦т право на передачу данных следующей станции при помощи кадра ITT, при этом в поле DID устанавливается адрес NID. Следующая станция переда╦т данные, затем кадр ITT и так далее. Таким образом, каждой станции предоставляется возможность передать свои данные. Предположим, что в сети работают станции с физическими адресами 3, 11, 14, 35, 126. Тогда маркер на передачу (кадр ITT) будет передаваться в следующей последовательности: 126╝3╝11╝14╝35╝126╝3 и т. д.

Для передачи пакета станция сначала должна получить маркер. Получив маркер, узел посылает кадр FBE той станции, которой должны быть переданы данные. Если станция-при╦мник не готова, она отвечает кадром NAK, в противном случае - ACK. Получив ACK, узел, владеющий маркером, начинает передавать кадр DATA. После отправки кадра передатчик ожидает ответа в течение 75,6 мкс. Если получен ответ ACK, то передатчик переда╦т маркер следующей станции. Если получен ответ NAK, то передатчик повторно переда╦т при╦мнику кадр DATA. Затем, вне зависимости от ответа маркер переда╦тся следующей станции.

Каждая станция начинает принимать кадр DATA, обнаружив передачу начального разделителя AB. Затем сравнивает значение адреса DID со своим адресом. Если адреса одинаковы или приш╦л broadcast-кадр, данные записываются в буфер станции, если нет, то кадр игнорируется. Кадр считается нормально принятым, если он принят полностью, и контрольная сумма совпадает со значением в поле CRC. Получив нормальный кадр DATA, станция переда╦т ответ ACK. Если при при╦ме обнаружена ошибка, то переда╦тся ответ NAK. В ответ на широковещательный кадр DATA кадры ACK и NAK не передаются.

В заключение этого пункта рассмотрим, как выполняется реконфигурация сети ARCNet.

Реконфигурация сети выполняется автоматически всякий раз при включении новой станции или при потере маркера. Сетевой адаптер начинает реконфигурацию, если в течение 840 мс не получен кадр ITT. Реконфигурация производится с помощью специального кадра реконфигурации (Reconfiguration Burst). Такой кадр длиннее любого другого кадра, поэтому маркер будет разрушен (из-за коллизии), и никакая станция в сети не будет владеть маркером (т. е. правом на передачу). После при╦ма кадра реконфигурации каждая станция переходит в состояние ожидания на время, равное 146*(256-ID) мкс. Если по окончании тайм-аута передач по сети не было (а это справедливо только для станции с наибольшим адресом ID), то узел переда╦т кадр ITT с адресом DID, равным собственному ID. Если ни одна станция не ответила, узел увеличивает DID на единицу и повторяет передачу кадра ITT и т. д. После положительного ответа маркер переда╦тся ответившей станции, а е╦ адрес ID запоминается как адрес следующей станции (NID). Эта операция повторяется, пока маркер не верн╦тся к первому узлу (станции с максимальным адресом). При выполнении реконфигурации каждая станция в сети узна╦т следующую за ней станцию. Таким образом формируется логическое кольцо, определяющее последовательность передачи маркера.

Метод доступа и кадры для сетей FDDI

Адаптеры FDDI поддерживают метод доступа Token Ring (см. п. 2.3.6.2) и обеспечивают производительность 100 Мбит/с. Максимальная длина кольца с оптоволоконным кабелем FDDI - 100 км. Интерфейс FDDI (Fiber Distributed Data Interface) является более современным, чем Ethernet, Token Ring и ARCNet. Сети FDDI можно использовать для объединения нескольких сетей Ethernet, расположенных в разных зданиях (рисунок 2.31).

Часто в качестве адаптеров FDDI используются интеллектуальные концентраторы, выполняющие функции моста, например, NetBuilder II. На рисунке интеллектуальный концентратор обозначен как Hub1. Простой концентратор (Hub2) обычно выполняет роль повторителя. Метод доступа, используемый в сетях FDDI, имеет следующие отличия от Token Ring (см. п. 2.3.6.2):

В сетях FDDI используются два основных типа кадра (рисунок 2.32):

Цифры на рисунке 2.32 обозначают длины полей кадров (в байтах). На рисунке введены следующие обозначения полей:

P - преамбула. Это поле предназначено для синхронизации.

SD - признак начала кадра.

FC - поле, состоящее из следующих областей: CLFFTTTT.

Рис. 2.31. Использование интерфейса FDDI для объединения сетей Ethernet

Бит C устанавливает класс кадра, который определяет, будет ли кадр использоваться для синхронного или асинхронного обмена. Бит L - это индикатор длины адреса станции (16 или 48 битов). В отличие от Ethernet и Token Ring здесь допускается использование в одной сети адресов той и другой длины. Биты FF определяют, принадлежит ли кадр подуровню MAC (т. е. кадр предназначен для управления кольцом) или подуровню LLC (т. е. кадр предназначен для передачи данных). Если кадр является кадром подуровня MAC, то биты TTTT определяют тип пакета (IPX и т. д.).

DA - адрес станции-при╦мника.

SA - адрес станции-источника.

FCS -контрольная сумма.

ED - конечный ограничитель кадра.

FS - поле статуса пакета. Это поле содержит поля А (Address Resolution) и C (Frame Copied) (см. таблицу 2.12).

Data/Command Frame Token

P8P8
SD1SD1
FC1FC1
DA2 или 6ED1
SA2 или 6FS1
Пакетдо 4500
 
 
 
 
FCS4
 
ED1/2
 
FS1
 

Рис. 2.32. Типы кадров для сетей FDDI

Предыдущая глава || Оглавление || Следующая глава

Copyright © CIT