17.2. Настройка EFD

Назначение

Функция EFD (Elephant Flow Detection) предназначена для обнаружения в сети “слоновьих потоков” (Elephant Flow) – потоков, несущих большие объемы данных и способных занять всю пропускную способность канала или даже привести его перегрузке.

Описание

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

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

Настройка

Ниже приведена настройка коммутатора в соответствии с представленной конфигурацией сети.

image

Рис. 17.2 Конфигурация сети

В данном примере задается поле характеристик и порог трафика. Когда скорость потока превысит указанный порог, характеристики пакетов будут инкапсулированы в определенные пользователем UDP-пакеты и отправлены на указанный сервер.

Шаг 1: Вход в режим “Global config”

Switch# configure terminal

Шаг 2: Настройка EFD

Указание IP DA для вычисления хэш-значения пакета:

Switch(config)# hash-value global
Switch(config-hash-value-global)# efd select ipda

Настройка порога скорости для EFD:

Switch(config)# efd detect speed 1000

Потоки, скорость которых превышает 1000 Мбит/с, будут помечены как Слоновьи потоки. Значение по умолчанию - 50 Мбит/с.

Включение функции уведомления о EFD с указанием IP DA и UDP-порта сервера:

Switch(config)# efd notify enable 10.0.0.2 20007

Шаг 3: Настройка портов

Switch(config)# interface eth-0-1/1
Switch(config-if)# efd enable
Switch(config-if)# exit
Switch(config)# int eth-0-1/2
Switch(config-if)# no switchport
Switch(config-if)# ip address 10.0.0.1/24
Switch(config-if)# exit

Шаг 4: Создание статической записи ARP (необязательно)

Switch(config)# arp 10.0.0.2 0.1.2

Шаг 5: Выход из режима “Global config”

Switch(config)# end

Шаг 6: Проверка

Switch# show efd configuration 
Elephant flow detection configuration information:
--------------------------------------------------
Detect rate            : 1000 Mbps
Detect granularity     : 16B
Detect time interval   : 1000 ms
EFD aging time         : 120 ms ~ 150 ms
EFD detect packet type : All IP packets
EFD IPG                : disable
EFD redirect interface : N/A
EFD flow hash fields   : destination-ip
EFD enabled interface : 
------------------------- -------------------------
eth-0-1/1                 

Поток, получаемый с порта “eth-0-1”, превысил 1000 Мб и был детектирован как Слоновий поток:

Switch# show efd flow information decap 
EFD flow issued at:07:29:40 UTC Mon Aug 01 2023 
From:eth-0-1, FlowId: 1701
-------------------------------------------------------- 
MACDA:0000.00aa.bbbb, MACSA:0000.00bb.bbbb
IPv4 Packet, IP Protocol is TCP(6)
IPDA:22.22.22.101, IPSA: 11.11.11.11
L4SourcePort:43690, L4DestinationPort:43741
-------------------------------------------------------- 
00 00 00 aa bb bb 00 00 00 bb bb bb 08 00 45 00 
00 32 00 00 40 00 c8 06 70 35 0b 0b 0b 0b 16 16 
16 65 aa aa aa dd aa aa aa dd aa aa aa dd aa aa 
aa dd aa aa aa dd aa aa aa dd aa aa aa dd aa aa 

TCP-дамп сервера:

12:41:28.286993 92:fd:58:d7:8f:00 > 00:00:00:01:00:02, ethertype IPv4 (0x0800), length 60: IP (tos 0x0, ttl  64, id 0, offset 0, flags [DF], proto 17, length: 44) 10.0.0.1.49071 > 10.0.0.2.20007: [udp sum ok] UDP, length 16
        0x0000:  0000 0001 0002 92fd 58d7 8f00 0800 4500  ........X.....E.
        0x0010:  002c 0000 4000 4011 26bf 0a00 0001 0a00  .,..@.@.&.......
        0x0020:  0002 bfaf 4e27 0018 b05b 0000 0101 0000  ....N'...[......
        0x0030:  0008 0001 0004 1616 1665 0000            .........e..

Описание заголовка EFD-пакета. Анализ приведенной выше информации:

Данные

Описание

Примечание

0х0000

Зарезервированные биты

Не заполняются

0х01

Номер версии пакета EFD

Поддерживается только 0x01

0х01

Опкод потока EFD

0x01 - поток впервые распознан как Слоновий поток, 0x02 - поток уже распознавался как Слоновий поток

0х0000 0008

Длина области данных пакета EFD

Включая тип данных

0х0001

Тип данных пакета EFD

IPDA

0х0004

Длина данных пакета EFD

0х16161665

Данные

IP DA = 22.22.22.101