Увага до FEC: як одна опція може “покласти” вашу інфраструктуру
Сучасні мережі вражають своїми можливостями – 25, 40, 100 Gbps вже стали стандартом для дата-центрів, хмарних інфраструктур і високонавантажених середовищ. Але з кожною новою швидкістю приходить не лише прогрес, а й нові виклики. Один із них – Forward Error Correction (FEC). Те, що має допомагати, іноді стає на заваді.
Як усе почалося
Нещодавно наша команда зіткнулася з досить специфічною проблемою: мережеве з’єднання на швидкості 25 Gbps просто не піднімалося. Жодних повідомлень про помилки, жодної очевидної причини – просто “лінку немає”. Дослідження показало, що винуватцем стала сама технологія FEC.
FEC – це метод виправлення помилок, який працює на фізичному рівні. У середовищах 25/40/100Gbps він є стандартом де-факто, оскільки допомагає компенсувати втрати сигналу. Проблема полягає в тому, що реалізацій FEC існує кілька:
- BASE-R FEC
- RS-FEC
- NO-FEC (вимкнено)
І якщо пристрої по обидва боки каналу не узгоджують один і той самий тип FEC – лінк не піднімається. Ні попереджень, ні підказок. Просто тиша.
Локальний баг з глобальними наслідками
Ми швидко з’ясували, що проблема не обмежується лише нашою інфраструктурою. На форумах Intel десятки інженерів по всьому світу повідомляють про схожі симптоми. Причому апаратне забезпечення – різне: від серверів Dell до комутаторів Cisco та Arista. Єдине, що їх об’єднує – несумісна реалізація FEC у драйверах та прошивках.
Цікаво, що одразу кілька великих вендорів визнали проблему офіційно:
- Intel підтвердила існування бага і випустила рекомендації, як обійти його, включаючи відключення FEC вручну.
- Broadcom/VMware вказали, що оновлення драйверів може порушити конфігурацію FEC.
- Dell у своїх release notes зазначила, що FEC – це одне з джерел проблем при піднятті лінків.
Що з цим робити: рекомендації від IT-Solutions
На сьогодні вендори поступово оновлюють драйвери та прошивки, але ми радимо залишатися пильними, особливо якщо у вас в інфраструктурі:
- Мережеві карти Intel E810
- VMware ESXi 7/8
- 25Gbps з’єднання, що не піднімаються
- Комутатори Cisco / Arista / Mellanox
Щоб уникнути проблем із FEC, ми радимо наступне:
- Вимикайте FEC на мережевих інтерфейсах і комутаторах – особливо, якщо використовуєте Intel E810.
- Фіксуйте швидкість вручну: 25 Gbps Full Duplex без auto-negotiation.
- Уникайте автоматичного узгодження параметрів у критичних середовищах.
- Оновлюйте прошивки та драйвери згідно з останніми рекомендаціями вендорів.
- Перевіряйте сумісність: комутатори, мережеві карти, SFP-модулі та кабелі повинні працювати в одній “екосистемі”.
- Тестуйте все у максимально наближених до бойових умовах перед запуском у продакшн.
Порада наприкінці
І, нарешті, головне. Якщо ви купуєте обладнання enterprise-рівня – обов’язково закладайте бюджет на технічну підтримку. Інакше можна витратити тижні на з’ясування, що проблема – не у вас, а у мікрофрагменті драйвера, написаному кимось на іншому континенті.
FEC – це чудова технологія, але навіть вона не замінить людського контролю, досвіду і проактивного підходу. Іноді найкраще рішення – просто вимкнути її.