Доброго времени суток!
Планирую собрать кластер из 3х серверов.
Подключаться все 3 сервера будут к одному свичу двумя DAC кабелями по 2м портам 2хSFP+ 2х10Gb/s.
Нигде в интернет не смог найти, как будут передаваться данные по такому агрегированному каналу, будет ли весь трафик идти одновременно по 2м сетевым картам, например если:
1. Скачивается один большой файл?
2. Много мелких файлов но в последовательной операции копирования?
3. Несколько мелких файлов несколькими потоками (операциями копирования).
4. Обмен данными рамках одного ESTABLISHED соединения, например с БД или SSL?
У меня есть опасения, что агрегация будет работать путём чередования процессов, т.е. ESTABLISHED соединений, но в рамках одного соединения трафик всё равно будет идти по одной сетевой карте.
Подскажите как оно на самом деле?
Common implementations use L2 or L3 hashes (i.e. based on the MAC or the IP addresses), ensuring that the same flow is always sent via the same physical link.
из Википедии
Исходя из этого, совершенно не исключено, что в случае присутствия всего трёх серверов, оба соединения (от одного сервера к двум другим) пойдут по одному пути, в то время как второй будет простаивать.
Почитайте про режимы балансировки в lacp канале.
Доступный список может отличаться для различного оборудования.
Причём надо иметь ввиду, что балансировка настраивается как со стороны сервера, так и со стороны коммутатора.
Обычно, доступна балансировка на основе ip, Mac адреса (отправителя или получателя).
Это означает, что при связи двух серверов, получить скорость больше 1 линка не получится.
Если тебе важно обеспечить максимальную пропускную способность для одного соединения, то LACP сам по себе, вероятно, не будет оптимальным решением, и стоит рассмотреть другие варианты.
Со стороны сервера настраивается бондинг с mode=0 что означает режим balance-rr(roundrobin), для использования режимов balance-rr, balance-xor и broadcast на коммутаторе сети должен быть настроено статическое объединение портов (static port trunking).