Флит (компьютерные сети)
Эта статья предоставляет недостаточный контекст для тех, кто не знаком с предметом . ( Май 2019 г. ) |
В компьютерных сетях флит ( или единица управления потоком цифра управления потоком ) — это атомарный фрагмент канального уровня , который формирует сетевой пакет или поток . [1] Первый флит, называемый флитом заголовка, содержит информацию о маршруте этого пакета (а именно, адрес назначения) и устанавливает поведение маршрутизации для всех последующих флитов, связанных с пакетом. За заголовком следует ноль или более фрагментов тела, содержащих фактическую полезную нагрузку данных. Последний флит, называемый хвостовым флитом, выполняет некоторый учет, чтобы закрыть соединение между двумя узлами .
Виртуальное соединение сохраняет состояние, необходимое для координации обработки пакетов. Как минимум, это состояние идентифицирует выходной порт текущего узла для следующего прыжка маршрута и состояние виртуального соединения (бездействие, ожидание ресурсов или активное). Виртуальное соединение может также включать указатели на буферы пакета, которые буферизованы на текущем узле, и количество буферов, доступных на следующем узле. [2] : 237
Межсетевая сеть: основы
[ редактировать ]Растущая потребность в производительности вычислительных систем вынудила отрасль перейти на многоядерную и многоядерную арену. В этой настройке выполнение ядра (программы) распределяется между несколькими процессорами, и вычисления происходят параллельно, что обеспечивает производительность с точки зрения времени выполнения. Однако это означает, что теперь процессоры должны иметь возможность беспрепятственно обмениваться данными и управляющими сигналами друг с другом. Одним из простых подходов является межсоединение на основе шины , группы проводов, соединяющих все процессоры. Однако этот подход не масштабируется по мере увеличения количества процессоров в системе. [ нужна ссылка ] Следовательно, масштабируемая высокопроизводительная межсетевая сеть лежит в основе параллельной компьютерной архитектуры .
Базовая сетевая терминология и предыстория
[ редактировать ]Определения сети межсоединений
[ редактировать ]Формальное определение соединительной сети
«Сеть межсоединений I представлена сильно связным направленным мультиграфом, I = G(N,C) . Множество вершин мультиграфа N включает в себя набор узлов обрабатывающего элемента P и набор узлов маршрутизатора RT . дуги C представляют собой набор однонаправленных каналов (возможно, виртуальных), которые соединяют либо элементы обработки с маршрутизаторами, либо маршрутизаторы друг с другом». [3]
Основное ожидание от межсетевой сети состоит в том, чтобы иметь как можно меньшую задержку, то есть время, необходимое для передачи сообщения от одного узла к другому, должно быть минимальным, при этом допуская одновременное выполнение большого количества таких транзакций. [4] Как и в случае любых других компромиссов при инженерном проектировании, соединительная сеть должна соответствовать этим характеристикам, сохраняя при этом как можно более низкую стоимость реализации. Обсудив, что ожидается от сети, давайте рассмотрим несколько моментов проектирования, которые можно настроить для достижения необходимой производительности.
Основными строительными блоками межсетевой сети являются ее топология , алгоритм маршрутизации , стратегия коммутации и механизм управления потоком.
Топология : относится к общей инфраструктуре соединительной сети; шаблон, по которому подключены несколько процессоров. Этот шаблон может быть регулярным или нерегулярным, хотя сегодня во многих многоядерных архитектурах используются сети с высокой регулярностью.
маршрутизации Алгоритм : определяет, по какому пути должно пройти сообщение, чтобы обеспечить доставку на узел назначения. Выбор пути основан на нескольких показателях, таких как задержка, безопасность, количество задействованных узлов и т. д. Существует множество различных алгоритмов маршрутизации, обеспечивающих разные гарантии и предлагающих разные компромиссы в производительности.
переключения Стратегия . Алгоритм маршрутизации определяет только путь, по которому сообщение должно пройти, чтобы достичь узла назначения. Фактическое прохождение сообщения внутри сети является обязанностью стратегии коммутации. В основном существует два типа стратегий коммутации: сеть с коммутацией каналов — это сеть, в которой путь зарезервирован и заблокирован для других сообщений до тех пор, пока сообщение не будет доставлено в узел назначения. Известным примером сети с коммутацией каналов являются телефонные службы, которые для вызова устанавливают цепь через множество коммутаторов. Альтернативный подход — сеть с коммутацией пакетов , в которой сообщения разбиваются на более мелкие компактные объекты, называемые пакетами . Каждый пакет помимо порядкового номера содержит часть данных. Это означает, что теперь каждый пакет можно передавать индивидуально и собирать в пункте назначения на основе порядкового номера.
Управление потоком: обратите внимание, что ранее мы установили тот факт, что несколько сообщений могут проходить через межсетевую сеть в любой момент времени. Механизм управления потоком, реализованный на уровне маршрутизатора, отвечает за принятие решения о том, какое сообщение будет передано, а какое будет задержано.
Характеристики и метрики сети
[ редактировать ]Каждая сеть имеет ширину w и передачи скорость f , которые определяют пропускную способность сети как b = w*f . Объем данных, передаваемых за один цикл, называется физической единицей или фитом . Как видно, ширина сети также равна размеру фита. Следовательно, пропускную способность сети также можно определить в фит/сек. Каждое передаваемое сообщение можно разбить на более мелкие фрагменты объектов фиксированной длины, называемые пакетами . Пакеты, в свою очередь, могут быть разбиты на блоки управления потоком сообщений или пакеты .
Потребность в флитах
[ редактировать ]Важно отметить, что фиты представляют собой логические единицы информации, а фиты представляют собой физическую область, то есть фиты представляют собой количество битов, которые могут передаваться параллельно за один цикл. Рассмотрим Cray T3D. [5] Он имеет сеть межсоединений, которая использует управление потоком сообщений на уровне флита, где каждый флит состоит из восьми 16-битных фитов. Это означает, что его размер flit составляет 128 бит, а размер phit — 16 бит. Также рассмотрите коммутатор IBM SP2. [6] Он также использует управление потоком сообщений уровня FIT, но его размер FIT равен размеру PHIT, который установлен в 8 бит.
Определение ширины крыла
[ редактировать ]Обратите внимание, что размер сообщения является доминирующим решающим фактором (среди многих других) при выборе ширины флита. В зависимости от размера сообщения существует два противоречивых варианта дизайна:
- Сохранение небольшого размера каждого пакета; в этом случае количество пакетов увеличится, что приведет к увеличению общего количества транзакций и уменьшению размера каждой отдельной транзакции.
- Сохранение большого размера каждого пакета; в этом случае количество пакетов уменьшится, что уменьшит общее количество транзакций и одновременно увеличит размер каждой отдельной транзакции.
В зависимости от размера пакетов необходимо определить ширину физического канала между двумя маршрутизаторами. Это означает, что если размер пакета велик, ширина канала также должна оставаться большой, однако большая ширина канала подразумевает большую площадь и более высокую рассеиваемую мощность. Как правило, ширина ссылок сведена к минимуму. Ширина звена (которая также определяет ширину фита) теперь влияет на ширину фита. [7]
На этом этапе важно отметить, что хотя передача между маршрутизаторами обязательно строится с использованием фитов, методы коммутации работают с терминами флитов. [7] Более подробную информацию о различных методах переключения см. в разделах «Червоточина» и «Проходное переключение» . Поскольку большинство методов переключения работают с флитами, они также оказывают большое влияние на определение ширины флитов. Другие определяющие факторы включают надежность, производительность и сложность реализации.
Пример
[ редактировать ]Рассмотрим пример того, как пакеты передаются с точки зрения флитов. В этом случае у нас есть пакет, передающийся между A и B на рисунке. Процесс передачи пакетов происходит в следующие этапы.
- Пакет будет разделен на флиты W, X, Y и Z.
- Буфер передачи в A загрузит первый элемент Z и отправит его в B.
- После того, как B получит Z, B переместит элемент из буфера.
- Буфер передачи в A затем загрузит следующий элемент Y и отправит его в B.
- Продолжайте выполнять вышеуказанные действия до тех пор, пока все флиты не будут переданы B.
- Затем B соберет все флиты, чтобы получить весь пакет.
Краткое содержание
[ редактировать ]Флит (единицы/цифры управления потоком) — это единица объема данных, когда сообщение передается на уровне канала. Флит может быть принят или отклонен на стороне получателя в зависимости от протокола управления потоком и размера приемного буфера. Механизм управления потоком на уровне канала позволяет получателю отправлять непрерывный поток сигналов, чтобы контролировать, следует ли ему продолжать отправку импульсов или прекратить отправку импульсов. Когда пакет передается по каналу связи, перед началом передачи пакет необходимо разделить на несколько фрагментов. [ нужна ссылка ]
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ «Архивная копия» (PDF) . Архивировано из оригинала (PDF) 20 марта 2015 г. Проверено 25 октября 2018 г.
{{cite web}}
: CS1 maint: архивная копия в заголовке ( ссылка ) - ^ Уильям Джеймс Далли; Брайан Таулз (2004). «13.2.1». Принципы и практика сетей межсетевого взаимодействия . Morgan Kaufmann Publishers, Inc. ISBN 978-0-12-200751-4 .
- ^ Дуато, Дж.; Лисне, О.; Панг, Р.; Пинкстон, ТМ (1 мая 2005 г.). «Теория динамической реконфигурации сети без тупиков. Часть I». Транзакции IEEE в параллельных и распределенных системах . 16 (5): 412–427. дои : 10.1109/TPDS.2005.58 . ISSN 1045-9219 . S2CID 15354425 .
- ^ Эльзевир. «Параллельная компьютерная архитектура — 1-е издание» . www.elsevier.com . Проверено 3 декабря 2016 г.
- ^ Скотт, Стивен Л.; Торсон, Грег (1 января 1994 г.). «Оптимизированная маршрутизация в Cray T3D» . Материалы Первого международного семинара по параллельной компьютерной маршрутизации и связи . PCRCW '94. 853 . Лондон, Великобритания, Великобритания: Springer-Verlag: 281–294. дои : 10.1007/3-540-58429-3_44 . ISBN 978-3540584292 .
- ^ «Коммуникационное программное обеспечение и параллельная среда IBM SP2» . domino.research.ibm.com . 23 февраля 2001 г. Проверено 29 ноября 2016 г.
- ^ Jump up to: а б Дуато, Хосе (6 августа 2011 г.). Межсетевые сети . Морган Кауфман. ISBN 9780123991805 .