Я хочу создать агрегацию на Solaris box с помощью dladm. Я понимаю, что после создания агрегации 802.3ad будет использоваться для балансировки нагрузки в зависимости от политики (L2, L3 или L4). Единственное требование состоит в том, чтобы интерфейсы были подключены к одному коммутатору, поддерживающему 802.3ad, и интерфейсы работали с одинаковой скоростью / полным дуплексом. Я надеюсь, что кто-то прокомментирует несколько вопросов:
По умолчанию LACP отключен для каждого агрегирования. В чем преимущество включения LACP? Разве я не занимался балансировкой нагрузки с помощью 802.3ad и политики L4 по умолчанию, которая, как я понимаю, выбирает исходящий интерфейс на основе хэша портов источника и назначения. Читая википедию, можно увидеть только два преимущества LACP (1) аварийное переключение и (2) автоматическая настройка. Разве 802.3ad уже не поддерживает аварийное переключение? Если канал выходит из строя, коммутатор все равно будет пытаться передавать пакеты на этот интерфейс? Трудно поверить, что это правда. Что касается автоматической настройки, я не уверен, что нужно настроить на коммутаторе. Для 802.3ad я предполагаю, что коммутатору просто нужно знать, какую политику балансировки нагрузки (L2, L3 или L4) использовать для отправки пакетов в агрегацию. Я что-то упускаю? В чем преимущество LACP перед 802.3ad?
Я читал в Интернете, что NFS использует два соединения между сервером / клиентом: одно для данных и одно для метаданных, и что типичная передача пакетов в агрегации является циклической, что приводит к тому, что весь трафик данных проходит через один интерфейс с метаданными на другой интерфейс (при двухпортовой агрегации). Похоже, это противоречит тому, что я читал о политике балансировки нагрузки 802.3ad. Если используется L4 (по умолчанию Solaris dladm), исходящий интерфейс будет основан на исходном и целевом портах, и если коммутатор также использует L4, входящий интерфейс также будет основан на порте src / dst. Я ошибся? Кстати, действительно ли коммутатор уровня 2 смотрит на порт src / dst? Для коммутатора кажется ресурсоемким разобрать пакет, чтобы вычислить хэш и затем собрать его заново. Я также не ожидал, что исходящий и входящий интерфейсы будут использоваться для одного и того же хэша src / dst, то есть, возможно, алгоритм хеширования, используемый хостом, отличается от коммутатора, или они подсчитывают порты с разных концов. По этой причине я не понимаю, почему один поток может быть ограничен максимальной пропускной способностью одного интерфейса - если входящая и исходящая передача может осуществляться на разных интерфейсах.
Прошу прощения за фрагментированный пост. Я пытаюсь разобраться в технологиях, но не смог найти хорошего учебника или статьи о том, как эти протоколы на самом деле реализованы. Я вижу много статей, в которых 802.3ad и LACP сгруппированы как одно и то же. Будем признательны за любые комментарии.
Спасибо!
IEEE 802.3ad является стандартом для агрегации каналов, несмотря на перенос стандартов агрегации каналов в группу 802.1, например 802.1ax.
Настоящее преимущество LACP - это блоки LACPDU, которые передают ссылку от коммутатора к хосту. Это гарантирует, что обе стороны канала поддерживают LACP. Второстепенное преимущество заключается в том, что с LACP и хост, и коммутатор рассматривают все агрегированные порты как один порт, что позволяет полностью использовать все пути, в отличие от LAG на стороне хоста, когда коммутатор по-прежнему видит несколько портов и все пакеты. к хосту проходят один путь, и только исходящие пакеты от хоста балансируются по ссылкам.
Если вы используете поставщика коммутатора, который поддерживает MLAG или агрегацию каналов с несколькими шасси, вы можете использовать LACP для связывания нескольких каналов, подключенных к нескольким коммутаторам. Это обеспечивает высокую устойчивость, упрощая управление и оптимизируя пропускную способность.
Но в основном, если ваш коммутатор поддерживает LACP, используйте LACP. Если ваш коммутатор не поддерживает LACP, используйте агрегацию без LACP.
По части 2:
Я обнаружил, что в наших коммутаторах Cisco используется гораздо более простой алгоритм балансировки нагрузки. Они построили хэш-таблицу источников на основе деталей кадра Ethernet и связали каждый хэш с портом в канале.
Поэтому каждый источник стал ассоциироваться только с одним портом и был ограничен пропускной способностью физического канала.