Управление потоком Ethernet

Управление потоком Ethernet — это механизм временной остановки передачи данных в Ethernet семейства компьютерных сетях . Целью этого механизма является предотвращение потери пакетов при перегрузке сети .
Первый механизм управления потоком, кадр паузы , был определен стандартом IEEE 802.3x . Последующее управление потоком на основе приоритетов , как определено в стандарте IEEE 802.1Qbb , обеспечивает механизм управления потоком на уровне канала, которым можно управлять независимо для каждого класса обслуживания (CoS), как определено IEEE P802.1p , и применимо к мостовым сетям центров обработки данных (DCB) и позволяет устанавливать приоритет передачи голоса по IP (VoIP), видео по IP и трафику синхронизации базы данных по сравнению с трафиком данных по умолчанию и массовой передачей файлов.
Описание
[ редактировать ]Передающая станция (компьютер или сетевой коммутатор ) может передавать данные быстрее, чем другой конец канала может их принять. Используя управление потоком , принимающая станция может подать сигнал отправителю с просьбой приостановить передачу, пока получатель не догонит ее. Управление потоком данных в Ethernet может быть реализовано на уровне канала передачи данных .
Первый механизм управления потоком, кадр паузы , был определен целевой группой Института инженеров по электротехнике и электронике (IEEE), которая определила сегменты полнодуплексного канала Ethernet. Стандарт IEEE 802.3x был выпущен в 1997 году. [1]
Пауза кадра
[ редактировать ]Перегруженный сетевой узел может отправить кадр паузы, который останавливает передачу отправителя на определенный период времени. Кадр управления доступом к среде передачи (MAC) шестнадцатеричный ( EtherType 0x8808) используется для передачи команды паузы с кодом операции управления, установленным на 0x0001 ( ) . [1] Только станции, настроенные для полнодуплексной работы, могут отправлять кадры паузы. Когда станция желает приостановить другой конец канала, она отправляет кадр паузы либо на уникальный 48- битный адрес назначения этого канала, либо на 48-битный зарезервированный адрес многоадресной рассылки 01-80-C2-00-00- 01 . [2] : Приложение 31B.3.3 Использование общеизвестного адреса избавляет станцию от необходимости обнаруживать и сохранять адрес станции на другом конце линии связи.
Еще одно преимущество использования этого многоадресного адреса связано с использованием управления потоком между сетевыми коммутаторами. Конкретный используемый адрес многоадресной рассылки выбирается из диапазона адресов, зарезервированного стандартом IEEE 802.1D , который определяет работу коммутаторов, используемых для мостового соединения . Обычно кадр с назначением многоадресной рассылки, отправленный на коммутатор, пересылается на все остальные порты коммутатора. Однако этот диапазон адресов многоадресной рассылки является особенным и не будет пересылаться коммутатором, совместимым со стандартом 802.1D. Вместо этого кадры, отправленные в этот диапазон, считаются кадрами, предназначенными для обработки только внутри коммутатора.
Кадр паузы включает в себя запрашиваемый период времени паузы в форме двухбайтового ( 16-битного) целого числа без знака (от 0 до 65535). Это число представляет собой запрошенную продолжительность паузы. Время паузы измеряется в единицах квантов паузы , где каждый квант равен 512 битовым временам .
К 1999 году несколько поставщиков поддерживали получение кадров паузы, но лишь немногие реализовали их отправку. [3] [4]
Проблемы
[ редактировать ]Одной из первоначальных причин использования кадра паузы была необходимость обработки контроллеров сетевых интерфейсов (NIC), у которых не было достаточной буферизации для обработки приема на полной скорости. Эта проблема не столь распространена при увеличении скорости шины и размера памяти. Более вероятный сценарий — перегрузка сети внутри коммутатора. Например, поток может входить в коммутатор по каналу с более высокой скоростью, чем тот, по которому он выходит, или несколько потоков могут входить по двум или более каналам, общая сумма которых превышает пропускную способность выходного канала. В конечном итоге это приведет к исчерпанию любого объема буферизации в коммутаторе. Однако блокировка отправляющего канала приведет к задержке всех потоков по этому каналу, даже тех, которые не вызывают перегрузки. Эта ситуация является случаем блокировки заголовка линии (HOL) и может происходить чаще в коммутаторах базовой сети из-за большого количества потоков, которые обычно агрегируются. Многие коммутаторы используют метод, называемый виртуальными очередями вывода, для устранения внутренней блокировки HOL, поэтому они никогда не отправляют кадры паузы. [4]
Последующие усилия
[ редактировать ]Управление перегрузками
[ редактировать ]Еще одна попытка началась в марте 2004 г., а в мае 2004 г. она стала называться Целевой группой по управлению перегрузкой IEEE P802.3ar. В мае 2006 года цели целевой группы были пересмотрены, чтобы определить механизм ограничения скорости передаваемых данных с точностью до 1%. Запрос был отозван, а оперативная группа была расформирована в 2008 году. [5]
Приоритетное управление потоком
[ редактировать ]Управление потоком Ethernet нарушает класс обслуживания Ethernet (определенный в IEEE 802.1p ), поскольку данные всех приоритетов останавливаются для очистки существующих буферов, которые также могут состоять из данных с низким приоритетом. В качестве решения этой проблемы компания Cisco Systems определила собственное расширение управления приоритетным потоком для стандартного протокола. Этот механизм использует 14 байт из 42-байтового заполнения в обычном кадре паузы. Код операции управления MAC для кадра приоритетной паузы — 0x0101. В отличие от исходной паузы, приоритетная пауза указывает время паузы в квантах для каждого из восьми классов приоритета отдельно. [6] Впоследствии расширение было стандартизировано проектом управления потоком на основе приоритетов (PFC), утвержденным 27 марта 2008 года, как IEEE 802.1Qbb. [7] Проект 2.3 был предложен 7 июня 2010 года. Редактором был Клаудио ДеСанти из Cisco. [8] Эта работа была частью рабочей группы по созданию мостов для центров обработки данных , которая разработала Fibre Channel over Ethernet . [9]
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ Jump up to: а б Стандарты IEEE для локальных и городских сетей: Дополнения к методу доступа множественного доступа с контролем несущей и обнаружением конфликтов (CSMA/CD) и спецификациям физического уровня — спецификация для полнодуплексной работы 802.3 и спецификация физического уровня для работы со скоростью 100 Мбит/с по двум парам Сбалансированная витая пара категории 3 или выше (100BASE-T2) . Институт инженеров электротехники и электроники . 1997. doi : 10.1109/IEESTD.1997.95611 . ISBN 978-1-55937-905-2 . Архивировано из оригинала 13 июля 2012 года.
- ^ Стандарт IEEE для Ethernet (PDF) . Ассоциация стандартов IEEE. 2018-08-31. дои : 10.1109/IEESTD.2018.8457469 . ISBN 978-1-5044-5090-4 . Проверено 29 ноября 2022 г.
{{cite book}}
:|website=
игнорируется ( помогите ) [ мертвая ссылка ] - ^ Энн Салливан; Грег Килмартин; Скотт Гамильтон (13 сентября 1999 г.). «Поставщики коммутаторов проходят тесты на совместимость» . Сетевой мир . стр. 81–82 . Проверено 10 мая 2011 г.
- ^ Jump up to: а б «Продавцы по управлению потоками» . Сетевой Мировой Фьюжн . 13 сентября 1999 г. Архивировано из оригинала 7 февраля 2012 г. Комментарий поставщика по поводу управления потоком в тесте 1999 года.
- ^ «Целевая группа по управлению перегрузкой IEEE P802.3ar» . 18 декабря 2008 года . Проверено 10 мая 2011 г.
- ^ «Приоритетное управление потоками: создание надежной инфраструктуры уровня 2» (PDF) . Белая книга . Сиско Системс. Июнь 2009 года . Проверено 10 мая 2011 г.
- ^ IEEE 802.1Qbb
- ^ «Управление потоком на основе приоритета IEEE 802.1Q» . Институт инженеров электротехники и электроники. 7 июня 2010 г. Проверено 10 мая 2011 г.
- ^ «Целевая группа по объединению центров обработки данных» . Институт инженеров электротехники и электроники. 7 июня 2010 г. Проверено 10 мая 2011 г.
Внешние ссылки
[ редактировать ]- «Контроль доступа к среде передачи данных Ethernet — кадры ПАУЗЫ» . Техническое резюме TechFest Ethernet . 1999. Архивировано из оригинала 4 февраля 2012 г. Проверено 10 мая 2011 г.
- Тим Хиггинс (7 ноября 2007 г.). «Когда управление потоком — это нехорошо» . Маленький сетевой строитель . Проверено 6 января 2020 г.
- Инструмент Linux для создания кадров PAUSE управления потоком данных. Архивировано 24 мая 2012 г. на Wayback Machine.
- Инструмент Python для генерации кадров PFC
- «Управление потоком Ethernet» . Темы высокопроизводительного обмена сообщениями . Архивировано из оригинала 8 декабря 2007 г.