Что такое и как настроить Link Aggregation Control Protocol (LACP) на примере Cisco

Link Aggregation Control Protocol (LACP)Агрегирование каналов (агрегация каналов, англ. link aggregation) — технология, которая позволяет объединить несколько физических каналов в один логический. Такое объединение позволяет увеличивать пропускную способность и надежность канала. Агрегирование каналов может быть настроено между двумя коммутаторами, коммутатором и маршрутизатором, между коммутатором и хостом.

Для агрегирования каналов существуют другие названия:

  • Port Trunking (в Cisco trunk'ом называется тегированный порт, поэтому с этим термином путаницы больше всего),
  • EtherChannel (в Cisco так называется агрегирование каналов, это может относиться как к настройке статических агрегированных каналов, так и с использованием протоколов LACP или PAgP)
  • И еще множество других: Ethernet trunk, NIC Teaming, Port Channel, Port Teaming, LAG (link aggregation), Link Bundling, Multi-Link Trunking (MLT), DMLT, SMLT, DSMLT, R-SMLT, NIC bonding, Network Fault Tolerance (NFT), Fast EtherChannel.

 

Общая информация об агрегировании каналов

Агрегирование каналов позволяет решить две задачи:

  • повысить пропускную способность канала
  • обеспечить резерв на случай выхода из строя одного из каналов

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

Что такое и как настроить Link Aggregation Control Protocol (LACP) на примере Cisco-0
Что такое и как настроить Link Aggregation Control Protocol (LACP) на примере Cisco-0

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

Что такое и как настроить Link Aggregation Control Protocol (LACP) на примере Cisco-01
Что такое и как настроить Link Aggregation Control Protocol (LACP) на примере Cisco-01
Без использования STP такое избыточное соединение создаст петлю в сети.

Технологии по агрегированию каналов позволяют использовать все интерфейсы одновременно. При этом устройства контролируют распространение широковещательных фреймов (а также multicast и unknown unicast), чтобы они не зацикливались. Для этого коммутатор, при получении широковещательного фрейма через обычный интерфейс, отправляет его в агрегированный канал только через один интерфейс. А при получении широковещательного фрейма из агрегированного канала, не отправляет его назад.

Хотя агрегирование каналов позволяет увеличить пропускную способность канала, не стоит рассчитывать на идеальную балансировку нагрузки между интерфейсами в агрегированном канале. Технологии по балансировке нагрузки в агрегированных каналах, как правило, ориентированы на балансировку по таким критериям: MAC-адресам, IP-адресам, портам отправителя или получателя (по одному критерию или их комбинации).

То есть, реальная загруженность конкретного интерфейса никак не учитывается. Поэтому один интерфейс может быть загружен больше, чем другие. Более того, при неправильном выборе метода балансировки (или если недоступны другие методы) или в некоторых топологиях, может сложиться ситуация, когда реально все данные будут передаваться, например, через один интерфейс.

Некоторые проприетарные разработки позволяют агрегировать каналы, которые соединяют разные устройства. Таким образом резервируется не только канал, но и само устройство. Такие технологии в общем, как правило, называются распределенным агрегированием каналов (у многих производителей есть своё название для этой технологии).

На этой странице рассматривается в основном агрегирование параллельных каналов. Для распределенного агрегирования выделен отдельный раздел в котором указаны соответствующие технологии некоторых производителей. Распределенное агрегирование в коммутаторах HP (ProCurve) рассмотрено более подробно.

Агрегирование каналов в Cisco

Для агрегирования каналов в Cisco может быть использован один из трёх вариантов:

  • LACP (Link Aggregation Control Protocol) стандартный протокол
  • PAgP (Port Aggregation Protocol) проприетарный протокол Cisco
  • Статическое агрегирование без использования протоколов

Так как LACP и PAgP решают одни и те же задачи (с небольшими отличиями по возможностям), то лучше использовать стандартный протокол. Фактически остается выбор между LACP и статическим агрегированием.

Статическое агрегирование:

  • Преимущества:
    • Не вносит дополнительную задержку при поднятии агрегированного канала или изменении его настроек
    • Вариант, который рекомендует использовать Cisco
  • Недостатки:
    • Нет согласования настроек с удаленной стороной. Ошибки в настройке могут привести к образованию петель

Агрегирование с помощью LACP:

  • Преимущества:
    • Согласование настроек с удаленной стороной позволяет избежать ошибок и петель в сети.
    • Поддержка standby-интерфейсов позволяет агрегировать до 16ти портов, 8 из которых будут активными, а остальные в режиме standby
  • Недостатки:
    • Вносит дополнительную задержку при поднятии агрегированного канала или изменении его настроек

Терминология и настройка

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

  • EtherChannel — технология агрегирования каналов. Термин, который использует Cisco для агрегирования каналов.
  • port-channel — логический интерфейс, который объединяет физические интерфейсы.
  • channel-group — команда, которая указывает какому логическому интерфейсу принадлежит физический интерфейс и какой режим используется для
Что такое и как настроить Link Aggregation Control Protocol (LACP) на примере Cisco-03
Что такое и как настроить Link Aggregation Control Protocol (LACP) на примере Cisco-03

Эти термины используются при настройке, в командах просмотра, независимо от того, какой вариант агрегирования используется (какой протокол, какого уровня EtherChannel).

На схеме, число после команды channel-group указывает какой номер будет у логического интерфейса Port-channel. Номера логических интерфейсов с двух сторон агрегированного канала не обязательно должны совпадать. Номера используются для того чтобы отличать разные группы портов в пределах одного коммутатора.

Общие правила настройки EtherChannel

LACP и PAgP группируют интерфейсы с одинаковыми:

  • скоростью (speed),
  • режимом дуплекса (duplex mode),
  • native VLAN,
  • диапазон разрешенных VLAN,
  • trunking status,
  • типом интерфейса.

Настройка EtherChannel:

  • Так как для объединения в EtherChannel на интерфейсах должны совпадать многие настройки, проще объединять их, когда они настроены по умолчанию. А затем настраивать логический интерфейс.
  • Перед объединением интерфейсов лучше отключить их. Это позволит избежать блокирования интерфейсов STP (или перевода их в состояние err-disable).
  • Для того чтобы удалить настройки EtherChannel достаточно удалить логический интерфейс. Команды channel-group удалятся автоматически.

Создание EtherChannel для портов уровня 2 и портов уровня 3 отличается:

  • Для интерфейсов 3го уровня вручную создается логический интерфейс командой interface port-channel
  • Для интерфейсов 2го уровня логический интерфейс создается динамически
  • Для обоих типов интерфейсов необходимо вручную назначать интерфейс в EtherChannel. Для этого используется команда channel-group в режиме настройки интерфейса. Эта команда связывает вместе физические и логические порты

После того как настроен EtherChannel:

  • изменения, которые применяются к port-channel интерфейсу, применяются ко всем физическим портам, которые присвоены этому port-channel интерфейсу
  • изменения, которые применяются к физическому порту влияют только на порт на котором были сделаны изменения

Настройка статической агрегации Etherchannel

Предположим есть две Cisco 2960 и компы, каждая Cisco на своем этаже, одного гигабитного порта не хватает, нужно сделать агрегирование. Схема представлена ниже.

Что такое и как настроить Link Aggregation Control Protocol (LACP) на примере Cisco-04
Что такое и как настроить Link Aggregation Control Protocol (LACP) на примере Cisco-04

Настроим наше оборудование на Etherchannel. Подключаемся к первой Cisco через ssh или терминал.

enable

config t

Я буду использовать гигабитные интерфейсы gi1/1 и gi1/2. Выберем сразу диапазон интерфейсов.

int range gigabitEthernet 1/1-2

channel-group 1 mode on (только Etherchanne)
end
wr

Что такое и как настроить Link Aggregation Control Protocol (LACP) на примере Cisco-05
Что такое и как настроить Link Aggregation Control Protocol (LACP) на примере Cisco-05

На второй Cisco делаем тоже самое, один в один.

Параметры команды:

  • active — Включить LACP,
  • passive — Включить LACP только если придет сообщение LACP,
  • desirable — Включить PAgP,
  • auto — Включить PAgP только если придет сообщение PAgP,
  • on — Включить только Etherchannel.

Комбинации режимов при которых поднимется EtherChannel:

Режим PAgPautodesirable
auto--EtherChannel
desirableEtherChannelEtherChannel
Режим LACPpassiveactive
passive--EtherChannel
activeEtherChannelEtherChannel

Интерфейсы в состоянии suspended

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

Просмотр состояния интерфейсов:

sw1#sh int status

Port      Name               Status       Vlan       Duplex  Speed Type
...
Fa0/9                        notconnect   1            auto   auto 10/100BaseTX
Fa0/10                       notconnect   1            auto   auto 10/100BaseTX
Fa0/11                       connected    trunk      a-full  a-100 10/100BaseTX
Fa0/12                       connected    trunk      a-full  a-100 10/100BaseTX
Fa0/13                       suspended    1          a-full  a-100 10/100BaseTX
Fa0/14                       connected    trunk      a-full  a-100 10/100BaseTX
...
Po1                          connected    trunk      a-full  a-100

Видим теперь что все ок и оба интерфейса в состоянии UP.
Что такое и как настроить Link Aggregation Control Protocol (LACP) на примере Cisco-06
Что такое и как настроить Link Aggregation Control Protocol (LACP) на примере Cisco-06

Просмотр информации о EtherChannel

sh etherchannel summary

 

Что такое и как настроить Link Aggregation Control Protocol (LACP) на примере Cisco-07
Что такое и как настроить Link Aggregation Control Protocol (LACP) на примере Cisco-07

Посмотреть port-channel

sh etherchannel port-channel

 

Что такое и как настроить Link Aggregation Control Protocol (LACP) на примере Cisco-08
Что такое и как настроить Link Aggregation Control Protocol (LACP) на примере Cisco-08

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

Настройка LACP

Теперь представим что у нас есть ядро и два коммутатора доступа L2. И между L2 и ядром нужно настроить агрегацию с помощью протокола LACP.

Что такое и как настроить Link Aggregation Control Protocol (LACP) на примере Cisco-09
Что такое и как настроить Link Aggregation Control Protocol (LACP) на примере Cisco-09

Перед настройкой агрегирования лучше выключить физические интерфейсы. Достаточно отключить их с одной стороны (в примере на sw1), затем настроить агрегирование с двух сторон и включить интерфейсы.

Подключаемся ко второй Cisco через ssh или терминал.

enable

config t

Я буду использовать гигабитные интерфейсы fa0/23-24

interface range  fa0/23-24
channel-protocol lacp (подготовка для lacp)
channel-group 1 mode passive (режим пассивный так как активный будет на ядре)

end

wr

Что такое и как настроить Link Aggregation Control Protocol (LACP) на примере Cisco-10
Что такое и как настроить Link Aggregation Control Protocol (LACP) на примере Cisco-10

Посмотрим настройки show etherchannel summary

Что такое и как настроить Link Aggregation Control Protocol (LACP) на примере Cisco-11
Что такое и как настроить Link Aggregation Control Protocol (LACP) на примере Cisco-11

Делаем на втором коммутаторе L2 тоже самое.

Теперь настроим ядро на уровне L3.

Подключаемся к ядру Cisco через ssh или терминал.

enable

config t

Будем настраивать две пары портов fa0/1-2 и fa0/3-4

interface range fastEthernet 0/1-2
channel-protocol lacp

channel-group 1 mode active

exit

Что такое и как настроить Link Aggregation Control Protocol (LACP) на примере Cisco-12
Что такое и как настроить Link Aggregation Control Protocol (LACP) на примере Cisco-12

Аналогично настроим fa0/3-4

interface range fastEthernet 0/3-4
channel-protocol lacp

channel-group 2 mode passive

exit

Что такое и как настроить Link Aggregation Control Protocol (LACP) на примере Cisco-13
Что такое и как настроить Link Aggregation Control Protocol (LACP) на примере Cisco-1

Смотрим что настроили

Что такое и как настроить Link Aggregation Control Protocol (LACP) на примере Cisco-14
Что такое и как настроить Link Aggregation Control Protocol (LACP) на примере Cisco-14

Подключаем линки и видим что все ок

Что такое и как настроить Link Aggregation Control Protocol (LACP) на примере Cisco-15
Что такое и как настроить Link Aggregation Control Protocol (LACP) на примере Cisco-15

Проверим пинги

Что такое и как настроить Link Aggregation Control Protocol (LACP) на примере Cisco-16
Что такое и как настроить Link Aggregation Control Protocol (LACP) на примере Cisco-16

 LACP с VLAN

Если у вас есть vlan, то каждую port-channel Нужно перевести в режим trunk командой

int port-channel 1

switchport mode trunk

НА коммутаторе третьего уровня сначала нужно создать нужные vlan и задать им ip адреса, а уже потом переводить port-channel в режим trunk. Для примера создам vlan 2 и назначу ему ip.

int vlan 2

ip address 192.168.2.251 255.255.255.0

no sh

exit

int port-channel 1

switchport trunk encapsulation dot1q

switchport mode trunk

exit

Для второй port-channel тоже самое, в итоге у вас будет работать вот такая схема.

Link Aggregation Control Protocol (LACP) на примере Cisco

Мы разобрали как настроить Link Aggregation Control Protocol (LACP) на примере Cisco.

Хочу отметить, что настройка lacp в cisco очень простая и не потребует много времени

Оцените статью
Настройка серверов windows и linux
Добавить комментарий

  1. Артем

    А в каком месте можно подробно ознакомиться с распределенным агрегированием каналов Procurve?

  2. Иван Семин автор

    Добрый день статья уже на подходе

  3. Александр

    Не будет работать. И на ядре, и на 2960 — режим passive

  4. Иван Семин автор

    Так я и писал, что на ядре будет active, а на 2 уровне passive

  5. Alex

    У вас для ядра channel-group 1 mode passive, а на скриншоте active, поправьте, пожалуйста.

  6. Иван Семин автор

    Спасибо

  7. Sno

    не пингуются пк…. сделал всё как написано? В чем может быть проблема?

  8. Иван Семин автор

    На самом компьютере ICMP разрешен, другие протоколы доступны?

  9. Sno

    Я только начал более глубоко изучать сети (cisco в особенности) к сожалению не знаю как посмотреть данный параметр. Могу сказать, что я сделал агрегированный транк, указал на l3 vlan 2,3 привязал к ним ip адреса 192.168.2(3).1/24 (lacp active), прописал ip routing, (пробовал без него тоже самое). На l2 тоже указал lacp passive + сделал транк порты. Указал на компах ip адреса прописал так же шлюзы. Вообщем всё делал по инструкции. Думал что из-за версии 6.2 данная проблема, но нет на 7.0 тоже самое.
    (Второй день уже не понимаю как решить данную задачу).

  10. Sno

    Разобрался с данным вопросом.
    В статье указанно что лучше отключить хотя бы с одной стороны порты, что бы не получилось случайно петель, так вот я не уверен что именно это повлияло на решение данного вопроса, но я так же отключил и на L3 коммутаторе порты. Настроил сначала без Trunk портов. И у меня запинговалось!!!. Далее настроил с транк портами и поначалу я думал, что после настройки LACP так же нужно настраивать trunk порты которые ведут к L3 с командами «sw mode trunk» sw trunk awolled vlan 2,3 , однако этого делать не нужно. Достаточно указать Access порты на L2 и прописать Vlan’s.
    Да для кого то это покажется очевидным, но всё же… Спасибо что отреагировали на мой вопрос.

  11. Иван Семин автор

    Рад, что у вас получилось.

  12. Михаил

    Очепятка «гигабитные интерфейсы fa0/23-24».
    Если я правильно понимаю, то или gi, или ста-мегабитные

  13. Иван

    Добрый день.
    Есть Cisco 3850 к ней подключены 2 сервера с 2 сетевыми картами 1 Гбит\с. на серверах 2 карты обьединены в 1(windows 2016 server). На Cisco настроена 2 интерфеса port-channel LACP Activ которые подключены к серверам.
    Линки поднялись. Проверяю скорость утилитой iperf с одного сервера на другой скорость 1 Гбит\с.
    Подскажите в чем может быть проблема?
    Настраивал на DLink вместо cisco ширина канала увеличилась до 2Гбит\с.


    1 Po1(SU) LACP Gi1/0/37(P) Gi1/0/38(P)
    2 Po2(SU) LACP Gi1/0/39(P) Gi1/0/40(P)

    Channel-group listing:
    ———————-

    Group: 1
    ———-
    Port-channels in the group:
    —————————

    Port-channel: Po1 (Primary Aggregator)

    ————

    Age of the Port-channel = 5d:01h:54m:47s
    Logical slot/port = 12/1 Number of ports = 2
    HotStandBy port = null
    Port state = Port-channel Ag-Inuse
    Protocol = LACP
    Port security = Disabled

    Ports in the Port-channel:

    Index Load Port EC state No of bits
    ——+——+——+——————+————
    0 00 Gi1/0/37 Active 0
    0 00 Gi1/0/38 Active 0

    Time since last port bundled: 0d:04h:12m:39s Gi1/0/37
    Time since last port Un-bundled: 0d:04h:15m:05s Gi1/0/38

    cisco3850#sh interfaces port-channel 1
    Port-channel1 is up, line protocol is up (connected)
    Hardware is EtherChannel, address is XXXXXXXX (bia XXXXXXXXX)
    Description: ***XXXXXX***
    MTU 1500 bytes, BW 2000000 Kbit/sec, DLY 10 usec,
    reliability 255/255, txload 2/255, rxload 2/255
    Encapsulation ARPA, loopback not set
    Keepalive set (10 sec)
    Full-duplex, 1000Mb/s, link type is auto, media type is
    input flow-control is off, output flow-control is unsupported
    Members in this channel: Gi1/0/37 Gi1/0/38
    ARP type: ARPA, ARP Timeout 04:00:00
    Last input never, output 00:00:00, output hang never
    Last clearing of «show interface» counters never
    Input queue: 0/2000/0/0 (size/max/drops/flushes); Total output drops: 6682647
    Queueing strategy: fifo
    Output queue: 0/40 (size/max)
    5 minute input rate 20317000 bits/sec, 1795 packets/sec
    5 minute output rate 17956000 bits/sec, 1814 packets/sec
    27232622 packets input, 32893809086 bytes, 0 no buffer
    Received 55808 broadcasts (42583 multicasts)
    0 runts, 0 giants, 0 throttles
    0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored
    0 watchdog, 42583 multicast, 0 pause input
    0 input packets with dribble condition detected
    47142937 packets output, 46959741778 bytes, 0 underruns
    0 output errors, 0 collisions, 1 interface resets
    0 unknown protocol drops
    0 babbles, 0 late collision, 0 deferred
    0 lost carrier, 0 no carrier, 0 pause output
    0 output buffer failures, 0 output buffers swapped out