Справочник системных ошибок и решений

Windows Server, Active Directory, 1С:Предприятие, СУБД, Linux, Cisco, MikroTik, Asterisk.

⚠️ Важная информация Все материалы, инструкции, команды и скрипты на сайте предоставлены исключительно в ознакомительных целях. Их применение может повлиять на работу операционной системы, программного обеспечения, баз данных, сетевого оборудования и других компонентов инфраструктуры. Перед выполнением действий создайте резервную копию и по возможности протестируйте изменения в безопасной среде. Пользователь самостоятельно оценивает риски и несет ответственность за результат. При отсутствии необходимых знаний обратитесь к квалифицированному ИТ-специалисту.

NET-LEAFSPINE-001 Сетевое оборудование и VPN

Траблшутинг Leaf-Spine архитектур: балансировка ECMP и диагностика хэширования

Обновлено: 25.08.2026 · Официальная документация ↗

При эксплуатации датацентровых фабрик Leaf-Spine с технологиями Underlay (eBGP/OSPF/IS-IS) и Overlay (VXLAN EVPN) наблюдаются следующие критические симптомы:

  • Аномальная поляризация трафика (Hash Polarization): один или два Spine-коммутатора перегружены (утилизация портов 95-100%), тогда как остальные линки загружены менее чем на 10-15%.
  • Периодические микроберсты (microbursts), вызывающие сбросы пакетов (tail drops) в выходных буферах (egress queues) при низкой средней утилизации интерфейса.
  • Джиттер, ретрансмиссии TCP и нарушение работы распределенных хранилищ данных (Ceph, vSAN, Nutanix) из-за переупорядочивания пакетов (Out-of-Order Packets).
  • Неравномерное распределение VNI/VxLAN туннелей по доступным путям ECMP.

1. Проверка состояния путей ECMP в таблице маршрутизации

Убедитесь, что все аплинки от Leaf до каждого Spine присутствуют в RIB и FIB с одинаковой метрикой:

# Для Cisco NX-OS:
show ip route 10.255.0.1
show ip adjacency
show hardware profile status
show ip bgp summary

# Для Arista EOS:
show ip route ecmp
show ip fib 10.255.0.1

2. Диагностика и устранение поляризации хэш-функции (Hash Polarization)

Поляризация возникает, когда все уровни коммутаторов используют идентичный seed и одинаковый алгоритм хэширования для CRC. Решением является изменение seed-значений и полиномов на каждом уровне:

# Настройка уникального CRC/Seed на Cisco Nexus 9000:
configure terminal
 ip load-share scale
 hardware profile ecmp 
 hardware load-share hash-offset 3
 hardware load-share crc-polynomial poly-2

# Включение глубокого анализа заголовков (Layer 4 + VXLAN Inner IP):
 port-channel load-balance dynamic
 ip load-sharing address source-destination port

3. Проверка симуляции хэширования для конкретного потока

# Определение конкретного физического интерфейса для 5-tuple потока:
show ip hash-instance 10.10.10.5 10.20.20.5 udp 4789 4789 detail
show hardware load-balance result interface Ethernet1/1 ...

4. Конфигурация Resilient Hashing (Предотвращение сброса сессий при падении линка)

# Предотвращает пересчет хэша для всех потоков при изменении топологии:
ip load-share resilient-hash
exit
copy running-config startup-config

5. Включение и анализ аппаратных счетчиков Microbursts

# Мониторинг дропов в буферах очередей:
show hardware profile buffer info
show interface priority-flow-control
show queuing interface Ethernet1/1
💡 Практика специалистов: При настройке VXLAN EVPN всегда проверяйте, чтобы программный стек VTEP генерировал внешний UDP Source Port на основе хэша внутренних L3/L4 заголовков. Это позволяет Underlay-коммутаторам эффективно балансировать трафик через стандартный L4 ECMP без поддержки глубокого разбора пакетов (Deep Packet Inspection).

Частые вопросы (FAQ)

Что такое поляризация хэша (Hash Polarization) в Leaf-Spine топологии?

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

Как инкапсуляция VXLAN влияет на работу алгоритмов ECMP?

VXLAN инкапсулирует оригинальный фрейм в UDP-пакет с внешним портом назначения 4789. Если коммутатор Underlay не умеет заглядывать во внутренние заголовки (Inner Header Hashing), весь VXLAN-трафик между двумя VTEP будет иметь одинаковый 5-tuple и пойдет по одному линку. Для решения необходимо активировать Inner Header Hashing или рандомизацию UDP Source Port на стороне VTEP.

Как решить проблему Out-of-Order пакетов при использовании ECMP?

Необходимо убедиться, что хэширование выполняется строго на основе Flow-based (5-tuple: IP Src, IP Dst, Port Src, Port Dst, Protocol), а не Packet-by-Packet (Round Robin), что гарантирует прохождение всех пакетов одной TCP-сессии по строго фиксированному физическому пути.

Какое максимальное количество путей ECMP поддерживается в современных чипсетах Broadcom/Cisco ASIC?

Большинство современных чипсетов (Broadcom Tomahawk, Trident, Cisco Cloud Scale) поддерживают от 64 до 128 путей ECMP в Underlay-маршрутизации.

Полезные материалы
Рекомендуем