С САМОГО начала технология 10Gigabit Ethernet была ориентирована не только на десятикратное увеличение скорости соединений. Предусматривались также обратная совместимость и полная интероперабельность с оборудованием Ethernet, обеспечивающим пропускную способность 10/100/1000 Мбит/с. Но добиться реального десятикратного роста пропускной способности в стандарте 802.3ae не так просто, как может показаться. Существенные различия между технологиями 10/100/1000 Мбит/с и 10G Ethernet на уровне управления доступом к среде (Media Access Control, MAC) не позволяют постоянно поддерживать быстродействие канала на уровне 10 Гбит/с.
Различия на уровне MAC
В сетях 10/100 Ethernet и Gigabit Ethernet механизмы MAC работают в линейном режиме. Данные пересылаются последовательными сериями как в прямом, так и в обратном направлении, а все начальные и конечные управляющие сообщения (включая тактовые и синхронизационные сигналы) встраиваются в общий поток. В сети 10G Ethernet все обстоит гораздо сложнее.
Чтобы довести пропускную способность до 10 Гбит/с, разработчики IEEE изменили способ интерпретации сигналов на уровне MAC. Вместо генерации последовательности серий в сетях 10G Ethernet информация на уровне MAC обрабатывается параллельно.
Каждый из маршрутов передачи и приема включает в себя четыре пути прохождения данных, а управление информационными потоками (которым присваиваются номера от 0 до 3) осуществляется за счет циклически последовательной обработки сигнальных байтов информации. На маршруте передачи, к примеру, первый байт соответствует пути 0, второй — пути 1, третий — пути 2, четвертый — пути 3, пятый — снова пути 0 и т. д.
Кадры Ethernet четко определяются начальными и конечными границами, или разделителями. Они помечаются специальными символами и 12-байтным межпакетным промежутком (Interpacket Gap, IPG), который содержит информацию о минимальном пространственном либо временном интервале между пакетами.
Параллельная методика обработки информации на MAC-уровне не позволяет заранее предсказать, по какому пути придет конечный байт предыдущего потока данных. В результате поиск стартового бита, необходимого для определения временных интервалов и синхронизации, становится более сложной задачей.
Разработчики стандарта 802.3ae предложили весьма элегантное решение: стартовый управляющий символ или самый первый байт нового кадра данных обязательно перемещается по пути 0. Но в этом случае усложняется управление параметром IPG, что в свою очередь влияет на производительность. Тем не менее ассоциация IEEE предложила производителям три способа решения данного вопроса: увеличение, сокращение и усреднение размера промежутка IPG.
Дополнение и увеличение IPG
Если конечный символ предыдущего пакета приходится на 12-ю ячейку 12-байтного IPG, на уровне MAC ничего не происходит: базовый размер IPG сохраняется, а начальный символ следующего пакета автоматически выбирается с позиции A пути 0. Если же конечный символ предыдущего пакета находится в какой-то другой ячейке, контроллер MAC-уровня должен добавить к IPG соответствующее количество байтов, чтобы гарантировать размещение стартового символа следующего пакета на позиции A пути 0. Таким образом, размер IPG варьируется от 12 до 15 байт (12-байтный «базовый» минимум плюс символы-заполнители).
Увеличение размеров IPG приводит к снижению пропускной способности соединения 10G Ethernet по крайней мере на 10%.
Сокращение IPG
После присоединения к IPG дополнительных байтов, обеспечивающих размещение начального символа на позиции A, MAC-контроллер убирает среднюю колонку неиспользуемых символов. В результате размер IPG уменьшается до 8 — 11 байт (12-байтная основа плюс символы-заполнители минус четыре неиспользуемых байта).
Уменьшение IPG за счет устранения средней колонки неиспользуемых байтов обеспечивает дополнительный 5-процентный прирост пропускной способности канала 10G Ethernet. Точное значение увеличения производительности зависит от длины пакета.
Усреднение IPG
Данный режим представляет собой сочетание двух предыдущих способов. Он предусматривает применение специального счетчика, который отслеживает количество добавляемых или удаляемых байтов (их может быть от 0 до 3). В одних случаях уровень MAC будет добавлять, а в других — удалять байты. В конечном счете средний размер параметра IPG в сети 10G Ethernet останется равным 12 байт.
Благодаря усреднению этого значения порт 10G Ethernet использует доступную ему пропускную способность на 100%, причем гарантируется отсутствие потерь производительности.
Маршалл Айзенберг (marshall@force10networks.com) — директор компании Force10 Networks по техническому маркетингу.