7. Агрегация портов

Понятие

Агрегация интерфейсов Ethernet - есть объединение нескольких физических портов (агрегируемых, bundled) Ethernet в один логический порт (bundle)

  • Агрегация работает за счет изменения логики коммутации:

    • Отправляемый в агрегатный интерфейс кадр по некоторому алгоритму отправляется в исходящий буфер одного из физических интерфейсов

    • Коммутация между агрегируемыми интерфейсами не выполняется

  • Изначально описана в стандарте IEEE 802.3ad-2000, затем в IEEE 802.1AX-2008

    • Разработана компанией Kalpana, производителем первых Ethernet-коммутаторов

    • Фирменное название у Cisco - EtherChannel

Балансировка

  • Порты в агрегатном канале загружаются одновременно, но не обязательно равномерно

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

Варианты схем балансировки:

  • Active-backup

    • Кадры отправляются и принимаются по одному физическому интерфейсу, другие подключаются когда упадет основной линк

    • Можно обойтись без настройки на другом конце канала

  • Round-robin

  • Отправка кадров по очереди в каждый интерфейс

  • Load-based

    • Кадр отправляется в менее загруженный порт и задерживается (распространено в оборудовании Brocade)

  • Application-based (flow-based)

    • Балансировщик анализирует содержимое кадра и направляет кадр в тот же порт, в который отправлялись предыдущие кадры того же потока

    • Балансировка обычно не отслеживает состояние потока

    • Кадры новых приложений могут отправляться в более загруженные порты

    • Загрузка физических портов приложениями может изменяться во времени

Преимущества и недостатки

  • Повышает надежность канала

  • При удачно выбранном механизме балансировки повышается теоретически доступная полоса пропускания

  • Гарантированная скорость равна скорости одного интерфейса

  • При неудачно выбранном механизме балансировки скорость не повышается

  • Возможна смена порядка кадров (reordering)

Требования к топологии

  • Агрегировать можно только порты, подключенные к одному и тому же удаленному устройству (иначе тяжело будет определить петлю)

  • Рекомендуется агрегировать однотипно настроенные порты

  • Особенность балансировщика Cisco - использование 3 бит энтропии и агрегация до 8 портов (плюс 8 в бэкап)

Балансировка Cisco:

  • Flow-based по-умолчанию

  • Выполняется XOR (логическое ИЛИ)

  • Считается хэш (например, прогоняет IP адрес через математическое выражение) который приводит к значению в три бита. Это значение определяет интерфейс для отправки кадра

Процедура контроля агрегации

  • Перед включением портов необходимо проверить топологию

    • Все порты подключены к одному и тому же удаленному устройству

    • Все порты на удаленном устройстве тоже агрегированы в логический канал, иначе получится полупетля

  • Статическая агрегация - ничего не проверяется

  • LACP (Link Aggregation Control Protocol) - протокол 802.3ad/802.1AX

  • PAgP (Port Aggregation Control Protocol) - проприетарный протокол Cisco

Статическая агрегация

  • Контроль топологии не производится

  • При неправильной настройке возможно возникновение полупетли

LACP

  • Вложение slow-protocols (термин стандарта 802.3)

  • Multicast-адрес: 01:80:С2:00:00:02

  • EtherType 0x8809, код субпротокола 0x01

  • Отправляет кадры по таймеру

    • Обнаруживает непрямые отказы канала (порт номинально Up, но по факту данные не ходят)

    • Нормальный таймер - раз в 30 секунд, быстрый таймер - раз в секунду, других таймеров нет

  • Два режима работы

    • Active - устройство посылает LACPDU безусловно

    • Passive - LACPDU отправляются только после получения LACPDU от соседа

  • До 16 портов в группе, из которых максимум 8 активны

  • Производит проверку топологии путем отправки LACPDU и выявляет некорректную настройку и отказы канала

PAgP

  • Вложение, характерное для протоколов Cisco

  • Multicast-адрес 01:00:0С:СС:СС:СС

  • LLC/SNAP вложение, код протокола 0x0104

  • Отправляет кадры в каждый физический порт

  • По умолчанию работает в silent-режиме (если на порту не получены PAgP-сообщения - порт переходит в Up)

  • Обнаруживает непрямые отказы канала

  • Нормальный таймер - раз в 30 секунд, быстрый таймер - раз в секунду

  • Два режима работы: desirable и auto

  • До 8 портов в группе

  • Расширение Enhanced PAgP обнаруживает Dual-Active отказ VSS

  • Проверка топологии производится путем отправки PAgP PDU

L3-агрегация

  • Агрегатный порт может работать в режиме routed port

    • Кадры, приходящие на "чужие" MAC-адреса, не передаются на коммутацию

    • Кадры, приходящие на "свои" MAC-адреса передаются обработчику L3

  • Сменить режим на "горячую" нельзя, то есть уже созданный агрегат в L3 перевести через "no switchport" нельзя

  • Также нельзя добавить L2-порты в L3-агрегат и наоборот

Настройка агрегатного интерфейса

  • При создании агрегата настройки копируются из первого порта группы

  • Изменения настройки агрегатного интерфейса применяются ко всем физическим портам, входящим в эту агрегатную группу

  • Изменения настройки физического порта влияют только на порт

  • Агрегируемые физические порты могут быть в состояниях:

    • bundled - все в порядке, порт агрегирован

    • stand-alone - порт работает, но не агрегирован

    • suspended - порт настроен противоречиво по отношению к группе

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

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

Диагностика агрегации

Работают привычные команды для физических интерфейсов:

  • MAC-адрес для агрегата будет выбран самый большой MAC с активных

  • BW - математическая сумма скоростей интерфейсов, она же будет учитываться в маршрутизации для метрик

  • Members in this channel: Gi0/0 Gi0/1 - физические интерфейсы в агрегате

Сводная таблица агрегатных портов

Базовая диагностика

Продвинутая диагностика

Управление балансировкой

  • Балансировка настраивается только для исходящих кадров

  • Балансировка включается для всего коммутатора

  • Варианты балансировки:

    • src-mac - все кадры от одного MAC-адреса отправляются с одного порта

    • dst-mac - все кадры на один и тот же MAC-адрес отправляются с одного порта

    • src-ip - все кадры (пакеты) от одного IP отправляются с одного и того же порта

    • dst-ip - все кадры на один и тот же IP отправляются с одного и того же порта

    • src-dst-mac (-ip) - для определения выходного порта берется результат функции XOR от MAC-адресов (IP-адресов) отправителя и получателя

Текущий вариант балансировки:

Last updated