Что такого особенного в InfiniBand?

InfiniBand, как собственная сетевая технология RDMA (удаленный прямой доступ к памяти), пользуется популярностью и используется многими клиентами. Но какие еще уникальные преимущества имеет InfiniBand по сравнению с ROCE (RDMA over Converged Ethernet), Ethernet без потерь, который также совместим и поддерживает протокол RDMA?

«Первоначальные сторонники» традиционной SDN: сделать сеть эффективной и простой

InfiniBand — это первая сетевая архитектура, изначально разработанная в соответствии с SDN. Он управляется менеджером подсети (т. е. контроллером SDN). В отличие от традиционного Ethernet (включая Ethernet без потерь ROCE), коммутаторы InfiniBand не используют никаких протоколов маршрутизации, а таблица пересылки всей сети рассчитывается и распределяется централизованным менеджером подсети. Помимо таблиц пересылки, менеджер подсети также отвечает за управление конфигурацией внутри подсети InfiniBand, например, за зонирование и качество обслуживания. Сеть InfiniBand больше не использует механизмы широковещания, такие как ARP, для пересылки обучения таблиц, и не будет широковещательных штормов или дополнительной траты полосы пропускания.

Хотя традиционный Ethernet (включая Ethernet без потерь ROCE) также поддерживает сети контроллеров SDN, различные производители сетей отклонились от ранней концепции пересылки таблицы потоков OpenSlow и вместо этого приняли решение netconf+VXLAN+EVPN, чтобы не стать «машиной без бренда». » производитель. Контроллер SDN стал более продвинутым «управлением большой сетью», которое обеспечивает лишь распространение соответствующих политик управления. Уровень пересылки по-прежнему основан на обучении между устройствами (обучение записей таблицы MAC, изучение таблиц ARP и обучение записей таблицы маршрутизации и т. д.), что приводит к тому, что ROCE Ethernet без потерь теряет преимущество эффективных и простых сетей, таких как InfiniBand.

Эффективная и простая сеть InfiniBand

Эффективная и простая сеть InfiniBand

Позвольте мне привести пример из жизни, чтобы проиллюстрировать это:

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

Для сравнения, беспилотное путешествие представляет собой традиционный Ethernet и ROCE Ethernet без потерь. Хотя они также оснащены навигационной системой (контроллером SDN) для навигации, водителю (сетевому устройству) все равно необходимо принимать решения в режиме реального времени и корректировать направление движения в зависимости от дорожных условий (обучение между устройствами). Этот процесс может включать в себя многократный запрос карты (механизм широковещания), ожидание светофора (растраченная трата полосы пропускания) или обходные пути во избежание перегрузки (сложная конфигурация сети), что делает весь процесс путешествия относительно неэффективным.

Механизм предварительного предотвращения кредитных перегрузок: реализация собственной сети без потерь

В сети InfiniBand используется кредитный механизм, позволяющий избежать проблем переполнения буфера и потери пакетов. Этот механизм гарантирует, что отправитель инициирует передачу пакета только тогда, когда он подтвердит, что получатель имеет достаточный кредит для приема соответствующего количества сообщений.

Этот кредитный механизм работает следующим образом: каждое сетевое соединение InfiniBand имеет заранее определенный буфер для хранения передаваемых пакетов. Перед отправкой данных отправитель проверяет доступный кредит получателя. Этот кредит можно понимать как размер буфера, доступный в данный момент получателю. Отправитель решит, инициировать ли передачу пакета на основе этого значения кредита. Если у получателя недостаточно кредитов, отправитель ждет, пока получатель освободит достаточные буферы, и сообщит о новых доступных кредитах.

Как только получатель завершает пересылку, он освобождает использованные буферы и постоянно сообщает отправителю доступный в данный момент размер запланированного буфера. Таким образом, отправитель может понять состояние буфера получателя в режиме реального времени и скорректировать передачу пакетов данных. Этот механизм управления потоком на уровне канала гарантирует, что отправитель не отправит слишком много данных, эффективно предотвращая переполнение сетевого буфера и потерю пакетов.

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

В сети InfiniBand используется механизм на основе кредитов, позволяющий принципиально избежать проблем с переполнением буфера и потерей пакетов за счет управления потоком на уровне канала, в то время как в ROCE lossless Ethernet используется механизм управления перегрузкой «после события». Перед отправкой сообщения оно не согласовывает ресурсы с получателем, а напрямую пересылает сообщение. Только когда на принимающем коммутаторе наблюдается перегрузка буфера порта (или предстоящая перегрузка), сообщение управления перегрузкой отправляется через протоколы PFC и ECN, что позволяет одноранговому коммутатору и одноранговой сетевой карте сократить или приостановить отправку сообщения. Этот метод «постфактум» может в определенной степени смягчить влияние перегрузки, но полностью избежать потери пакетов и нестабильности сети невозможно.

Принципиальная схема передачи данных без потерь в сети infiniBand

Позвольте мне использовать другой пример для иллюстрации:

Кредитный механизм сети InfiniBand подобен гостинице, поддерживающей бронирование мест по телефону. Если вы хотите пообедать в ресторане, вы заранее позвоните в отель, чтобы убедиться, что в нем достаточно мест, и таким образом избежите смущения, связанного с отсутствием места после прибытия в ресторан. Этот метод обеспечивает качество обеда для клиентов и позволяет избежать напрасной траты ресурсов и неудовлетворенности.

Очередь клиентов после прибытия в ресторан подобна механизму управления перегрузками «после мероприятия». Доход на инвестированный капитал Ethernet без потерь. Те, кто не записался заранее, могут только ждать в зависимости от реальной ситуации. Хотя отели будут принимать меры по уменьшению заторов, они все равно могут столкнуться с риском нехватки мест и потери клиентов. Хотя механизм управления перегрузками «после события» может в определенной степени справиться с ситуацией, он не может полностью избежать неудовлетворенности и потерь клиентов.

Режим сквозной пересылки: позволяет сети снизить задержку

Ethernet (включая Ethernet без потерь ROCE) по умолчанию использует режим промежуточного хранения. Коммутатору необходимо полностью получить весь пакет данных и сохранить его в кэше, проверить адрес назначения и целостность пакета данных, а затем переслать его. Этот подход может вызвать некоторую задержку, особенно при обработке большого количества пакетов.

В то время как технология режима сквозной пересылки требует только считывания информации заголовка пакета данных, определения порта назначения, а затем немедленно начать пересылку пакета данных, когда коммутатор получает пакет данных. Эта технология позволяет значительно сократить время пребывания пакетов данных в коммутаторе, тем самым уменьшая задержки передачи.

Коммутаторы InfiniBand используют режим сквозной пересылки, что делает обработку сообщений очень простой. Для быстрого поиска пути пересылки требуется только 16-битный LID (предоставленный непосредственно менеджером подсети). Таким образом, задержка пересылки сокращается до менее чем 100 наносекунд. Коммутаторы Ethernet обычно используют адресацию поиска по таблице MAC и методы промежуточного хранения для обработки данных. Но поскольку им также необходимо обрабатывать множество сложных сервисов, таких как IP, MPLS, QinQ и т. д., время обработки относительно велико и может занимать несколько микросекунд или даже больше. Даже если некоторые коммутаторы Ethernet используют технологию сквозного соединения, задержка пересылки все равно может составлять более 200 наносекунд.

Задержка пересылки

Позвольте мне использовать другой пример для иллюстрации:

Ethernet обрабатывает пакеты так же, как отправляет хрупкие предметы. Почтальону необходимо быть особенно внимательным при получении посылки и проверять ее целостность, чтобы убедиться в отсутствии повреждений, прежде чем отправить ее по назначению. Почтальону на это требуется некоторое время, поэтому будет определенная задержка.

Коммутаторы InfiniBand обрабатывают пакеты больше, чем обычные отправления. Почтальон просто бегло просматривает адрес на посылке и быстро пересылает ее, не дожидаясь полной проверки посылки. Этот метод более быстрый и значительно сокращает время пребывания посылки на почте. offльда, тем самым уменьшая задержки передачи.

Оставьте комментарий

Наверх