Logo

EcoRouter

EcoNAT

EcoQOE

EcoBypass

English

  • Release Notes
  • Агрегирование каналов EcoRouter Documentation / Агрегирование каналов

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

    В один агрегированный порт могут быть объединены до 8 портов на одной или разных картах устройства. Для объединения скоростные характеристики портов должны совпадать. Также на портах не должно быть привязанных сервисных интерфейсов. Сервисный интерфейс для операций с метками VLAN настраивается на сконфигурированном агрегированном порту (см. раздел Сервисные интерфейсы).

    Вычисление хэш-функции

    Балансировка трафика осуществляется по потокам. Распределение кадров по каналам агрегированного порта происходит на основании данных в заголовках в кадре. На основании этой информации маршрутизатор принимает решение о использовании одного из физических каналов агрегированного порта. Для этого используется алгоритм хэширования.

    Поля, используемые для вычисления хэш-функции по умолчанию: 

    Router ID
    4 Байта

    S\C-Src Mac
    Последние 4 байта

    S\C-Dst Mac
    Последние 4 байта

    S\C-Src IP
    4 Байта

    S\C-Dst IP
    4 Байта

    Hash seed
    1 Байт

    Protocol Type
    1 Байт

    Port.no
    1 Байт

    Router ID  - неизменяемый идентификатор маршрутизатора.

    S\C-Src Mac (Service\Client-Source Mac address) - MAC-адрес отправителя.

    S\C-Dst Mac (Service\Client-Destination Mac address) - MAC-адрес получателя.

    S\C-Src IP (Service\Client-Source IP) - IP-адрес отправителя.

    S\C-Dst IP (Service\Client-Destination) - IP-адрес получателя.

    Hash seed  - изменяемое значение, уникальное в пределах маршрутизатора. Может принимать значения от 0 до 255. 

    Protocol Type - протокол транспортного уровня.

    Port.no - номер порта, принявшего пакет.

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

    Результатом вычисления хэш-функции является 32-битное число. Первые его 16 бит используются для балансировки в Link Aggregation Control Protocol (LACP), остальные - для балансировки в Equal-cost multi-path routing (ECMP).

    LACP

    LACP (Link Aggregation Control Protocol) - cигнальный протокол для обеспечения работы агрегированного порта. Для определения принадлежности портов к одному логическому каналу LACP отсылает во все порты, где он включен, PDU сообщения. LACP может работать в пассивном и активном режимах. Устройство, на котором настроен LACP в пассивном режиме, не отсылает PDU (Protocol Data Unit) самостоятельно при настроенном агрегированном канале, а ждёт получения PDU от соседнего устройства и только в случае получения отсылает свои. В активном режиме LACP постоянно шлёт PDU пакеты.

    В PDU содержатся собственные и ожидаемые от соседа параметры. Параметры содержат идентификатор системы, идентификатор группы интерфейсов, идентификатор физического интерфейса, с которого PDU был отправлен, и его текущее состояние. Агрегированный порт из состояния слушания переводится в состояние передачи трафика в случае одновременного выполнения следующих условий:

    • битовое слово statе идентифицирует порт соседнего устройства как присоединенный и работающий в группе,
    • пришедшие от соседа параметры соответствуют ожидаемым,
    • параметры, ожидаемые соседом, соответствуют собственным параметрам порта.

    Настройка параметров

    Для управления параметрами PDU используются команды контекстного режима конфигурирования агрегированного порта ecorouter(config-port-channel)#, представленные в таблице ниже.

    КомандаОписание
    lacp enableВключает функционал LACP на агрегированном порту. По умолчанию функционал выключен
    lacp key <NUM>Значение по умолчанию равно порядковому номеру порта в агрегированном канале. Изменяется в пределах от 0 до 65535
    lacp mode (active | passive)

    Режим работы LACP

    lacp period (fast | slow)

    Период отправки PDU сообщений и время их действия:

    • Fast - сообщение раз в 1 секунду, 3 секунды таймаут (по умолчанию).
    • Slow - сообщение раз в 30 секунд, 90 секунд таймаут.
    lacp system-id <ID>Идентификатор системе в формате XXXX:XXXX:XXXX
    lacp system-priority <NUM>Задает приоритет системы для разрешения конфликтов в выборе агрегированных портов. Чем меньше значение, тем выше приоритет. Значение по умолчанию равно 32768, изменяется в пределах от 0 до 65535


    Параметр port priority задает приоритет порта в агрегированном канале. Чем меньше значение, тем выше приоритет. По умолчанию равно 32768. Для изменения значения в контекстном режиме конфигурирования порта необходимо вызвать команду lacp-priority <NUM>, где NUM - приоритет порта, изменяемый в пределах от 0 до 65535.

    Команды просмотра

    Для просмотра статистики по LACP и состояния агрегированных портов используются следующие команды типа show.

    Для просмотра счетчиков используется команда show counters lacp ( | port) с указанием конкретного агрегированного порта при необходимости.

    Пример вывода команды:

    ecorouter#show counters lacp
     Port channel: ae.01
     Port                LACPDU recv pkts     LACPDU sent pkts    Unknown recv pkts    Illegal recv pkts
     te1                                0                 1648                    0                    0

    Для просмотра настроек LACP на портах EcoRouter используется команда show lacp internal.

    ecorouter#sh lacp internal
     Flags:  S - Device is requesting Slow LACPDUs
             F - Device is requesting Fast LACPDUs
             A - Device is in Active mode       P - Device is in Passive mode
     
     Port channel: ae.1
     
                                 LACP port Admin Port   Port
     Port            Flags State priority  Key   Number State
     te1/0           SA    bndl  32767     0x10  8      0x3D
     te1/1           SA    bndl  32767     0x10  9      0x3D

    Для детального вывода настроек используется команда show lacp internal detail.

    ecorouter#sh lacp internal detail
     Flags:  S - Device is requesting Slow LACPDUs
             F - Device is requesting Fast LACPDUs
             A - Device is in Active mode       P - Device is in Passive mode
     
     Port channel: ae.1
     Actor (internal) information:
     
                     Actor                Actor              Actor
     Port            System ID            Port Number Age    Flags
     te1/0           32767,000d.4838.8067 8           19     SA   
     
                     LACP Actor      Actor           Actor          
                     Port Priority   Oper Key        Port State     
                     32767           0x10            0x3D           
     
                     Port State Flags Decode:
                     Activity:   Timeout:   Aggregation:   Synchronization:
                     Active      Long       Yes            Yes             
     
                     Collecting:   Distributing:   Defaulted:   Expired:
                     Yes           Yes             No           No      
     
                     Actor                Actor              Actor
     Port            System ID            Port Number Age    Flags
     te1/1           32767,000d.4838.8067 9           27     SA   
     
                     LACP Actor      Actor           Actor          
                     Port Priority   Oper Key        Port State     
                     32767           0x10            0x3D           
     
                     Port State Flags Decode:
                     Activity:   Timeout:   Aggregation:   Synchronization:
                     Active      Long       Yes            Yes             
     
                     Collecting:   Distributing:   Defaulted:   Expired:
                     Yes           Yes             No           No


    Для просмотра информации о соседях используется команда show lacp neighbour ( | detail) ( | port). Опционально можно указать отдельный порт и вывод детализированной информации.

    Пример краткого и детализированного вывода команды:

     
    ecorouter#sh lacp neighbor
     Flags:  S - Device is requesting Slow LACPDUs
             F - Device is requesting Fast LACPDUs
             A - Device is in Active mode       P - Device is in Passive mode
     
     Port channel: ae.1
     Partner's information:
     
                           LACP port                        Port   Port
     Port            Flags priority  Dev ID          Age    Number State
     te1/0           FA    32768     908d.7845.9bc0  1      28     0x3F
     te1/1           FA    32768     908d.7845.9bc0  9      27     0x3F

    ecorouter#sh lacp neighbor detail
     Flags:  S - Device is requesting Slow LACPDUs
             F - Device is requesting Fast LACPDUs
             A - Device is in Active mode       P - Device is in Passive mode
     
     Port channel: ae.1
     Partner's information:
     
                     Partner              Partner            Partner
     Port            System ID            Port Number Age    Flags
     te1/0           32768,908d.7845.9bc0 28          18     FA   
     
                     LACP Partner    Partner         Partner        
                     Port Priority   Oper Key        Port State     
                     32768           0x1             0x3F           
     
                     Port State Flags Decode:
                     Activity:   Timeout:   Aggregation:   Synchronization:
                     Active      Short      Yes            Yes             
     
                     Collecting:   Distributing:   Defaulted:   Expired:
                     Yes           Yes             No           No      
     
                     Partner              Partner            Partner
     Port            System ID            Port Number Age    Flags
     te1/1           32768,908d.7845.9bc0 27          26     FA   
     
                     LACP Partner    Partner         Partner        
                     Port Priority   Oper Key        Port State     
                     32768           0x1             0x3F           
     
                     Port State Flags Decode:
                     Activity:   Timeout:   Aggregation:   Synchronization:
                     Active      Short      Yes            Yes             
     
                     Collecting:   Distributing:   Defaulted:   Expired:
                     Yes           Yes             No           No


    Для указанных команд могут использоваться модификаторы и вывод в файл, как и для любых других команд show.

    ECMP

    ECMP (Equal-cost multi-path routing) - механизм выбора лучшего пути до сети назначения среди равнозначных. Выбор выходного интерфейса и маршрута осуществляется на основании вычисления хэш-функции. Функционал включен по умолчанию.


    Настройка Link aggregation

    Именование агрегированных портов

    Возможное количество агрегированных портов на устройстве равно n/2, где n - количество физических портов на устройстве. Имена агрегированных портов начинаются с букв ae, за которыми следует точка и порядковый номер. 

    Команды настройки агрегированного порта

    КомандаОписание
    port ae.<номер>

    Команда создания порта агрегированного канала, где ae - указание на вид порта, через точку указывается порядковый номер (в конфигурационном режиме)

    bind <имя порта>

    Добавление порта в агрегированный канал (в контекстном режиме конфигурирования агрегированного канала). При работе с ER-2008 необходимо учитывать ограничения (см. Оборудование)

    description <строка>

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

    mtu <значение>

    Указание параметра mtu для агрегированного порта

    add-mirror-session <значение>

    Указание на созданное правило зеркалирования

    service-instance <имя>

    Создание сервисного интерфейса на агрегированном порту

    Порт в уже существующий агрегированный канал также можно добавить в контекстном режиме конфигурирования порта при помощи команды group <имя агрегированного порта>.

    Базовая настройка агрегированного порта. Способ 1

    Агрегированный порт настраивается в режиме конфигурирования.

    ecorouter(config)#port ae.10

    где ae - обязательная часть в имени порта, а 10 - его идентификатор.

    Добавление портов в агрегированный порт в контекстном режиме конфигурирования агрегированного канала:

    ecorouter(config-port-channel)#bind te0 
    ecorouter(config-port-channel)#bind te1
    ecorouter(config-port-channel)#bind te2
    ecorouter(config-port-channel)#bind te3

    Задание значения mtu на агрегированном порту:

    ecorouter(config-port-channel)#mtu 1500

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

    Базовая настройка агрегированного порта. Способ 2

    Агрегированный порт настраивается в режиме конфигурирования.

    ecorouter(config)#port ae.100

    где ae - обязательная часть в имени порта, а 100 - его идентификатор 

    Добавление порта в агрегированный канал в контекстном режиме конфигурирования порта:

    ecorouter(config)#port te0
    ecorouter(config-port)#group ae.100
    ecorouter(config)#port te1
    ecorouter(config-port)#group ae.100
    ecorouter(config)#port te2
    ecorouter(config-port)#group ae.100 

    По умолчанию значение mtu равно 9728. Задание значения mtu на агрегированном порту (значения на портах ae и te должны совпадать):

    ecorouter(config-port-channel)#mtu 1500

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

    Команды просмотра состояния агрегированного порта

    Просмотр состояния всех портов:

    ecorouter#show port 
    Port te0 is up 
     Type: 10 Gigabit Ethernet 
     MTU: 9728 max 9728 
      link state UP;  
     Input packets 8391086176507358240, bytes 2322538359385584737, errors 0 
     Output packets 0, bytes 0, errors 0 
    Port te1 is up 
     Type: 10 Gigabit Ethernet 
     MTU: 9728 max 9728 
      link state UP;  
     Input packets 8391086176507358240, bytes 2322538359385584737, errors 0 
     Output packets 0, bytes 0, errors 0 
    Port te2 is up 
     Type: 10 Gigabit Ethernet 
     MTU: 9728 max 9728 
      link state UP;  
     Input packets 8391086176507358240, bytes 2322538359385584737, errors 0 
     Output packets 0, bytes 0, errors 0 
    Port te3 is up 
     Type: 10 Gigabit Ethernet 
     MTU: 9728 max 9728 
      link state UP;  
     Input packets 0, bytes 0, errors 0 
     Output packets 0, bytes 0, errors 0 
    Port te4 is up 
     Type: 10 Gigabit Ethernet 
     MTU: 9728 max 9728 
      link state UP;  
     Input packets 0, bytes 0, errors 0 
     Output packets 0, bytes 0, errors 0 
    Port ae.10 is up 
      Link te0 
      Link te1 
      Link te2 
     MTU: 9728 
      link state DOWN;  
     Input packets 0, bytes 0, errors 0 
     Output packets 0, bytes 0, errors 0


    Просмотр состояния определенного порта:

    ecorouter#sh port ae.10 
    Port ae.10 is up 
      Link te0 
      Link te1 
      Link te2 
     MTU: 9728 
      link state DOWN;  
     Input packets 0, bytes 0, errors 0 
     Output packets 0, bytes 0, errors 0


    Просмотр счётчиков агрегированного порта: 

    ecorouter#sh counters port ae.100
    Port ae.100
     Received packets
      Total received packets: 0
      Total received bytes: 0
     Transmitted packets
      Total received bytes: 0
      Total transmitted packets:  0
      Total transmitted bytes: 0
     Transmission errors
      giants: 0
      Total transmission errors: 0