Анализ процесса автоматического согласования параметров сетевого соединения устройствами локальных сетей
За последние 20 лет был пройден путь от внедрения 100BASE-T к переходу на 10GBASE-T в небольших дата-центрах. Функция автоматического определения режима приема/передачи значительно облегчила переход к новым стандартам, позволив администраторам не заботиться о тщательном планировании и перенастройке большого количества устройств при замене сетевого оборудования.
Ступников АА
Принятый в 1995 году набор стандартов 100ВА8Е-Т позволяет использовать различные режимы обмена цанными (ЮОВАБЕ-ТХ, 100ВА8Е-Т4 и др.). После принятия стандарта производители оборудования начали выпуск устройств, которые поддерживали установку режимов ЮВАБЕ-Т, 100ВА8Е-Т4 и ЮОВАБЕ-ТХ, а также задание дуплексности установленного режима [1]. Многие сетевые адаптеры поддерживали не все стандарты, что в сочетании с большим количеством возможных режимов могло значительно осложнить админи-лрирование локальных сетей. Для автоматизации конфигурирования сетевых адаптеров двух соединенных витой парой устройств была разработана функция АШо-[^оНаНоп (АЫ).
Функция AN позволяет устройствам, соединенным средой передачи данных, обмениваться информацией о поддерживаемых режимах обмена информацией, выбирать наилучший из них, а также согласовывать использование ряда дополнительных параметров [2]. АЫ осуществляет передачу информации с помощью серий импульсов, которые изначально применялись для контроля соединения 10ВА8Е-Т; серии из 33 и 97 импуль-:ов генерируются с периодичностью порядка 10 мс и позволяют установить соединение за время порядка 1 с. Выбор наилучшего режима работы из нескольких ■доступных происходит с помощью схемы приоритетов.
УРОВНИ СЕТЕВОЙ МОДЕЛИ OSI
УРОВНИ CSMA/CD
ПРЕДСТАВЛЕНИЯ
СЕАНСОВЫЙ
транспортный
СЕТЕВОЙ
канальный
ФИЗИЧЕСКИЙ
LLC (LOGICAL LINK CONTROL)
MAC—MEDIA ACCESS CONTROL I reconciliation!
PCS
РМА
PMD
AUTONEG
ПЕРЕДАЮЩАЯ СРЕДА
Рис. 1. Соотношение уровней модели 051 и уровней стандарта 1ЕЕЕ 802.3
Схема уровней стандарта 802.3 и их соотношение с моделью OSI изображена на рис. 1. Изменение настроек скорости приема/передачи производится за счет изменений на физическом уровне и достигается за счет ужесточения требований к среде передачи данных, изменения порта подуровня подключения к физической среде (Physical Medium Attachment, РМА), а также расширения системы регистров независимого от среды передачи интерфейса (Mil, Medium Independent Interface) [2]. Для автоматического согласования скоростей в 1994 году фуппа компаний-производителей разработала первую версию протокола, получившего название “NWay Autodetect”, который реализует функцию AN для двух сетевых устройств, соединенных витой парой. AN производит выбор и включение выбранного РМА, оставляя контроль за средой передачи данных администраторам.
Изначально планировалось, что обмен информацией в ходе AN будет производиться с помощью 10BASE-T. Главным плюсом такого решения является возможность выбора лучшего режима работы для двух конечных устройств, однако невозможность функционирования AN в сети с повторителями, осуществляющими прием/передачу данных на первом уровне модели OSI, заставила отказаться от этого решения. Передачу информации было решено осуществлять с помощью серий проверочных импульсов, называемых Link Test Pulse (LTP) [1].
LTP существовали задолго до создания AN: единичные импульсы генерировались РМА 10BASE-T при отсутствии информации для передачи от верхних подуровней Ethernet. Если в течение определенного промежутка времени от соседнего устройства не поступает полезной информации или LTP, то производится переход в состояние “Link Test Fail”, говорящее о проблемах с соединением. Для выхода из состояния “Link Test Fail” необходимо получение нескольких LTP за короткое время. LTP передаются каждые 16±8 мс и имеют длительность в 100 не.
FLPB
LTP
Рис. 2. Схематическое изображение LTP и FLPB
Синхронизирующие импульсы ^ 1 \
DO D1 D2 D3 04 D5 D6 07 D8 09 010 011 012 013 014 015
Первый Бит Серии
Обозначение
DO
Импульс Импульс
1 2
Импульс
3
о
D1
Импульс Импульс 4 5
• • • • • •
Рис. 3. Первые 5 импульсов FLPB
Каждые 16±8 мс AN генерирует серии из 33 или 97 LTP, называемые Fast Link Pulse Bursts (FLPB). Между двумя последовательными импульсами одной серии проходит 62,5±7 мс. Нечетные импульсы служат для синхронизации и всегда передаются, четные импульсы служат для передачи информации и могут отсутствовать в серии (рис.З). В процессе AN сначала всегда передаются несколько FLPB, которые служат для обмена сведениями об основных возможностях адаптеров соседних устройств и называются Base Link Codeword (BLC). После обмена несколькими BLC может последовать обмен дополнительными страницами (Next Pages, NP), а также расширенными дополнительными страницами (Extended Next Pages, XNP).
DO 01 D2 D3 04 05 D6 07 D8 D9 010 011 D12 013 014 015
SO S1 S2 S3 S4 AO A1 A2 A3 A4 A5 A6 XNP RF Ack NP
Selector Field
Technology Ability Field
MO M1 М2 М3 M4 M5 M6 M7 M8 M9 M10 T AcK2 MP Ack NP
Message Code Field
Рис. 5. Message Page
Дополнительные сообщения бывают четырех типов: Message Page (МР, рис 5), Unformatted Page (UP), Extended Message Page (XMP) и Extended Unformatted Page (XUP). МР используются для уведомления о смысле вспомогательной информации, содержащейся в последующих UP; для реализации этой функции используются первые 11 значащих бит сообщения, совокупность которых образует поле «код сообщения» (Message Code Field), после которого следуют поле флагов (Flags Field), используемое для контроля за процессом обмена сообщениями. Форматы UP и МР в общем идентичны, отличие UP заключается в использовании первых 11 бит, получивших название “поле неформатированного кода” (Unformatted Code Field), для передачи самой информации. ХМР (рис.6) и XUP представляют собой поля МР и UP соответственно с дополнительным полем длиной в 32 бита (extended Unformatted Code Field), содержащим неформатированный код.
Message Code Field
Flags field
Extended Unformatted Code Field
Рис. 4. Base Link Codeword
Рассмотрим подробнее BLC, изображенное на рис4. Поле Selector Field служит для описания типа сообщения, для сообщений IEEE 802.3 это поле равно 00001 (последующие сведения об остальных полях BLC приведены для этого значения). Следующее поле называется Technology Ability Field (TAF) и служит для передачи части информации о поддерживаемых режимах работы; если устройство поддерживает определенный стандарт, то оно включает флаг этого стандарта в поле TAF. За TAF следуют флаги XNP, RF, Аск и NP. Флаг Аск служит для уведомления соседнего устройства о том, что от него были получены по крайней мере три последовательных копии одного и того же сообщения (флаг Аск в принятых сообщениях игнорируется). Флаг NP включается устройством, если оно поддерживает обмен дополнительными страницами и готово приступить к нему; если оба устройства устанавливают флаг NP, то должен последовать обмен по крайней мере одной парой дополнительных страниц. Флаг XNP включается, если устройство поддерживает обмен расширенными дополнительными сообщениями; в случае, когда оба устройства устанавливают флаг XNP и успешно производят обмен BLC, все последующие FLPB должны содержать 97 импульсов, а интервал между сериями должен составлять 8 мс. Флаг RF (Remote Fault) служит для уведомления о том, что в процессе AN обнаружен удаленный сбой.
Рис. 6. Extended Message Page
AN является обязательной функцией сетевых устройств, поддерживающих стандарты 1000ВASE-T и 10GBASE-T [1] с помощью AN производится выбор наилучшего режима работы и установление синхронизации между физическими уровнями двух соседних устройств с определением роли устройства (Master/Slave). Если устройство может передавать данные через РМА 1000BASE-T и в процессе обмена BLC оба соседних устройства установили флаги NP, то последует передача по крайней мере трех дополнительных страниц, одна из которых будет МР, а две остальные — UP; вместо грех дополнительных сообщений возможна передача ХМР. Если устройство может передавать данные через РМА 10GBASE-T и в процессе обмена BLC оба устройства установили флаги NP и XNP, то последует обмен ХМР. В обоих случаях дополнительные страницы будут содержать информацию о поддерживаемых режимах работы и данные, которые необходимы для определения роли устройства. Несмотря на одинаковые алгоритмы определения роли устройства при синхронизации, 1000BASE-T и 10GBASE-T передают информацию раздельно.
РМА = 10BASE-T
ш
ш;
ж
Функции AN
Прием
Управление
Передача
С
и.
MDI - MEDIUM DEPENDENT INTERFACE
Рис. 7. Высокоуровневая модель AN
AN реализуется с помощью трех основных конечных автоматов (State Machine); к ним относятся конечный автомат приема (Recieve State Machine, RSM), передачи (Transmit State Machine, TSM) и управления (Arbitration State Machine, ASM). Также AN может выполнять функцию проверки целостности соединения 10BASE-T (Link Integrity Test) и взаимодействовать с рядом РМА для определения режима работы соседнего устройства, не поддерживающего функцию AN.
TSM управляет передачей соседнему устройству различных FLPB, которые генерируются по запросам ASM; процесс генерации контролируется с помощью системы таймеров, счетчиков и регистров.
RSM, конечный аппарат проверки целостности соединения 10BASE-T и приемники определенных РМА получают и обрабатывают сигналы, поступающие от соседнего устройства. RSM обладает системой таймеров и счетчиков, с помощью которых контролирует прием FLPB. Конечный аппарат проверки целостности соединения 10BASE-T и приемники РМА применяются для реализации функции параллельного определения, которая использует особенности схем проверки соединений для выбора нужного РМА в случаях, когда соседнее устройство не поддерживает функцию AN и работает в определенном режиме приема/передачи.
ASM производит обмен данными с TSM, RSM и регистрами МП, контролирует выполнение AN и выбирает оптимальный режим приема/передачи данных. Выбор оптимального режима производится на основании таблице приоритетов (ссылка на Annex28 IEEE 802.3). При возникновении необходимости добавить новые режимы в таблицу иерархия старых режимов сохраняется.
Рис. 8. Схема соединения переключателя и сервера
Ниже рассмотрены ключевые для понимания принципов работы AN примеры. Пусть есть сервер и подключенный к нему переключатель. Адаптеры 10/100/1000BASE-T обоих устройств соединены витой парой надлежащего качества, оба устройства обладают возможностью установки определенного режима приема/передачи, а также выбора режима с помощью AN. Схематическое изображение подключения показано на рис.8.
1. Функция AN включена на сервере, а переключатель не поддерживает функцию AN и работает в режиме 10BASE-T Half-Duplex. В этом случае переключатель перейдет в состояние “Link Test Fail” и будет передавать LTP. Функция проверки целостности соединения 10BASE-T сервера получит несколько последовательных LTP и сообщит ASM о готовности установить соединение. После этого ASM изменит регистр МИ и сообщит об успешном завершении процесса AN; контроль передается 10BASE-T РМА.
Нужно заметить, что функция параллельного определения не позволит установить качественное соединение, если соседнее устройство будет работать в режиме Full-Duplex.
2. Функция AN включена на обоих устройствах, сервер может осуществлять прием/передачу данных по стандартам 10/100/1000ВASE-T, а переключатель — 10/100BASE-T и не поддерживает функцию передачи дополнительных сообщений; оба устройства поддерживают обмен данными в режиме Full-Duplex и HalfDuplex. В этом случае произойдет обмен несколькими последовательными BLCW, устройства установят биты Аск и передадут еще несколько сообщений, после чего будет произведен выбор наилучшего возможного режима — 100BASE-T Full-Duplex, внесено соответствующее изменение в регистр МП и осуществлена передача контроля 100BASE-T РМА.
3. Функция AN включена на обоих устройствах и оба устройства поддерживают обмен данными по стандартам 10/100/1000BASE-T, передачу дополнительных страниц, а также работу в режимах Half-Duplex и Full-Duplex. В таком случае после обмена BLCW, описанного выше, оба устройства приступят к обмену дополнительными страницами. Сначала произойдет обмен МР, у которых значение Message Code Field (М10:М0) будет равно 8. Потом последует передача двух очередей UP; первая будет состоять из копий страницы, содержащей данные о режимах приема-передачи, а также сведения о настройках и состоянии устройства, используемые при выборе Master/Slave; вторая очередь будет содержать копии страницы со случайным значением, сравнение которого используется при автоматическом выборе режима Master/Slave. После обработки данных будет выбран режим работы 1000BASE-T Full-Duplex, внесено изменение в регистр МИ и осуществлена передача контроля 1000ВASE-T РМА. Коммутатор, являющийся многопортовым устройством, будет работать в режиме Master.
За последние 20 лет был пройден путь от внедрения 100BASE-T к переходу на 10GBASE-T в небольших дата-ценграх. Функция автоматического определения режима приема/передачи значительно облегчила переход к новым стандартам, позволив администраторам не заботиться о тщательном планировании и перенастройке большого количества устройств при замене сетевого оборудования. В настоящее время установление соединения с помощью AN рекомендуется ведущими производителями оборудования и практически все сетевые адаптеры, использующие витую пару в качестве среды передачи, поддерживают эту функцию.
Литература
1. IEEE Link Task Force Autodetect. Specification for NWay Autodetect. National Semiconductor, 1994.
2. IEEE Std 802.3-2008. Part 3: Carrier Sense multiple access with Collision
Detection (CSMA/CD). Access Method and Physical Layer Specifications.
3. Rich Hernandez. Gigabit Ethernet Auto-Negotiation. 2001. http://www.ethermanage.com/ethernet/pdf/dell-auto-neg.pdf.