Центр Диагностики & База Системных Ошибок

Решения для Windows Server, Active Directory, 1С, СУБД, Linux, Cisco, MikroTik и IP-телефонии.

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

Проблемы конфигурации RDMA RoCE: устранение ошибок и настройка PFC

Обновлено: 28.08.2026  ·  Официальная база знаний

Симптомы сбоев протокола RDMA RoCE

Прямой доступ к памяти SMB Direct (RDMA) не активируется при обмене данными между нодами кластера S2D или Hyper-V. В журнале SMBClient/Operational регистрируется Event ID 30818: The client cannot establish an RDMA connection, а трафик откатывается на стандартный стек TCP/IP со 100% загрузкой процессора ядра.

СимптомГде фиксируетсяПричина
RDMA State: False / DisabledGet-NetAdapterRdmaОтсутствие поддержки или отключение RDMA в свойствах драйвера сетевого адаптера
Сброс пакетов при нагрузке (PFC Loss)Счетчики производительности PFCНесовпадение тегов приоритета (CoS Priority 3) на сервере и коммутаторе
SMB Direct падает до чистого TCPEvent ID 30818 SMBClientОтсутствие сквозной поддержки Data Center Bridging (DCBx) в сети

Пошаговая настройка и верификация RoCE v2

  1. Проверьте активность и работоспособность RDMA на физических адаптерах:
    Get-NetAdapterRdma; Get-SmbServerNetworkInterface | Select-Object InterfaceAlias, RdmaCapable
  2. Установите компонент Data Center Bridging (DCB) и настройте приоритет PFC:
    Install-WindowsFeature Data-Center-Bridging; New-NetQosPolicy "SMB-Direct" -NetDirectPortMatchCondition 445 -PriorityValue8021Action 3; Enable-NetQosFlowControl -Priority 3
  3. Настройте разделение полосы пропускания (ETS) для трафика RoCE:
    New-NetQosTrafficClass "SMB" -Priority 3 -BandwidthPercentage 60 -Algorithm Strict
  4. Проверьте активность трафика RDMA в реальном времени:
    Get-Counter "\SMB Direct Connection(*)\Bytes RDMA Read/sec"; Get-Counter "\SMB Direct Connection(*)\Bytes RDMA Write/sec"

Критически важно: Для работы RoCE v2 на всех сетевых коммутаторах (ToR Switches) должен быть настроен режим Lossless Ethernet: включен Priority Flow Control (PFC) для приоритета 3 и ECN (Explicit Congestion Notification).

Практический опыт инженера: Если на сервере настроен виртуальный коммутатор SET (Switch Embedded Teaming), никогда не настраивайте DCB на уровне физических адаптеров — правила QoS и DCB должны применяться глобально на хосте через модуль NetQos.

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

В чем главное отличие протоколов RoCE v2 и iWARP?

iWARP работает поверх надежного транспортного протокола TCP и не требует тонкой настройки свитчей (Lossless Fabric). RoCE v2 работает поверх UDP и требует обязательной настройки DCB/PFC на коммутаторах.

Почему при сбое RDMA процессор сервера перегружается?

RDMA передает данные напрямую из памяти в сетевую карту минуя процессор. При сбое весь трафик переходит на системный TCP стек, нагружая CPU обработкой сетевых пакетов.

Как проверить генерацию пакетов PFC Pause на сервере?

Используйте счетчики производительности: '\Network Adapter(*)\Outbound Priority Flow Control Frames'.

Как перезапустить стек RDMA на сетевом адаптере?

Выполните Disable-NetAdapterRdma -Name 'NIC1' и затем Enable-NetAdapterRdma -Name 'NIC1'.