Агрегирование портов. LACP.

Агрегирование порта

Что делать, если одного соединения пропускной способности в 100M/1G/10G/100G недостаточно для ваших нужд? Теоретическим, мы можем соединить оборудование несколькими линками, но без агрегирования мы получим только петлю на оборудовании, в результате чего положим сеть, если, конечно, не будет включен протокол Spanning Tree, который воспримет эти соединения как петли и не выключит лишние линки. Почему образуется петля? Это связано  с работой коммутаторов, подробнее можно прочитать тут

Давайте рассмотрим, что такое агрегация и агрегированные порты и зачем это надо.

В терминологии CISCO это Etherchannel, Brocade — LAG, Extreme — sharing… Стандартизированное решение — LACP(Link Aggregation Control Protocol) — протокол, который не зависит от вендора (производителя) оборудования. Все реализации объединения/агрегирования портов выполняют одну функцию, а именно, объединение физических портов в 1 логический с суммарной пропускной способностью.

lag

рис 1

 

В данное время практически все провайдеры, цоды, дата-центры, контент-генераторы использую агрегацию для увеличения пропускной способности линии,так как ее плюсы очевидны: увеличение пропускной способности и резервирование линков (при падении одного, трафик равномерно распределяется между другими). Однако, находятся и те, которые не используют лаг, например, всем известная социальная сеть Вконтакте. Если вам придется с ними работать, то, возможно, вас удивит их заявление, что они не агрегируют линки. Вконтакте заставят вас настроить протокол динамической маршрутизации через каждый линк ( BGP), будь у вас там их хоть 16.

Протокол LACP

Рассмотрим, как работает агрегация на примере протокола LACP.

LACP -(англ. Link Aggregation Control Protocol ) отсылает пакеты, которые называются LACPDU, через все интерфейсы устройства, на которых он включен. На основании этих пакетов оборудование определяет  принадлежность физических портов к тому или иному логическому каналу. Протокол может работать в двух режимах:

1. Пассивный режим,  при котором оборудование ждет от соседа  LACPDU пакеты и только тогда начинает высылать свои.

2. Активный режим, при котором оборудование постоянно шлет LACPDU пакеты.

Для того, чтобы LACP заработал, требуется одинаковая скорость и емкость каналов.

В результате установления работы протокола LACP коммутаторы обмениваются:

• System Identifier (priority + MAC)
• Port Identifier (priority + номер порта)
• Operational Key (параметры порта)

Это требуется для того, чтобы лаг не собрался как-нибудь не так, например как показано на рисунке 2.

nolag

рис 2

Балансировка трафика в лаге

Балансировка трафика осуществляется посредством выбора физического  канала отправителем фрейма посредством выбранного алгоритма.  К основным и часто используемым можно отнести следующие алгоритмы :

  • по MAC-адресу отправителя или MAC-адресу получателя или учитывая оба адреса
  • по IP-адресу отправителя или IP-адресу получателя или учитывая оба адреса
  • по номеру порта отправителя или номеру порта получателя или учитывая оба порта

Рассмотрим на примере двух агрегированных соединений при использовании метода балансировки по  мак-адресу отправителя. В данном случае индексом для балансировки будет использоваться последний бит мак-адреса отправителя рисунок 3.

balance2

рис 3.

В случае, если линков будет 4, то для балансировки будет использоваться последние 2 бита мак-адреса, как показано на рисунке 4.

balance4

рис 4.

Соответственно, если в лаге будет 3 линка, то как можно догадаться при использовании данного метода равномерной балансировки добиться будет сложно и пойдет перекос по трафику на какой-либо линк. Поэтому следует относиться внимательно к выбору метода балансировки.

Один коммент

  1. Иван 03.12.2014 at 10:19 пп · Ответ

    Хороший сайт добавил в закладки

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

*

code