У цій статті ми розглянемо методику активації пакетів збільшеної довжини, Jumbo Frames, на віртуальній машині з Windows, запущеної в Hyper-V на базі Windows Server 2012 R2. Але для початку трохи коротко нагадаємо що таке Jumbo Frames і навіщо вони потрібні.


Jumbo Frames – це особливі, наддовгі кадри Ethernet, розмір яких перевищує стандартний розмір MTU (Maximum Transmission Unit) для Ethernet в 1518 рік байт. Розмір Jumbo-кадрів зазвичай варіюється в діапазоні від 1518 до 16000 байт. Як правило, розмір Jumbo Frame-а не перевищує 9000 байт, це обмеження накладається 32 бітної CRC в мережах Ethernet, Яка втрачає свою ефективність при обсязі переданих даних більше 12000 байт.

Навіщо ж потрібні такі збільшені пакети?

Завдяки використанню пакетів збільшеної довжини можна істотно підвищити ККД мережі, тому що при збереженні розміру Ethernet заголовка, кількість корисної інформації, що міститься в пакеті збільшується (майже в 6 разів). Крім того за рахунок зменшення кількості пакетів, заголовки яких потрібно розбирати, знижується навантаження на CPU сервера. Пакети Jumbo Frames рекомендується використовувати в високопродуктивних мережах з інтенсивним пересиланням великих обсягів даних

Важливо! Для того, щоб скористатися технологією Jumbo Frames необхідно, щоб цей режим підтримувався і був включений як на кінцевих серверах, так і на всьому транзитному мережевому обладнанні (режим підтримується практично на всіх сучасних мережевих картах і комутаторах).

Налаштування Jumbo Frames в Hyper-V Windows Server 2012 / R2

За замовчуванням jumbo frames в Windows – системах відключений. Щоб активувати передачу великих пакетів Jumbo Frames для гостьової ОС, запущеної в віртуальній машині на базі Hyper -V 2012 треба:

  1. Включити Jumbo Frames на фізичних мережевих картах (NIC) гипервизора (хостовой ОС), підключених до мережі LAN
  2. Включити підтримку Jumbo Frames на мережевому обладнанні LAN
  3. Включити Jumbo Frames на віртуальному комутаторі Hyper-V
  4. Активувати Jumbo Frames в гостьовій ОС

Jumbo Frames на фізичних мережевих картах сервера

Для кожної з мережевих карток (NIC), можуть використовуватися для з’єднань сервера (хостовой ОС) до мережі LAN необхідно у властивостях мережевих адаптерів перейти в режим настройки драйвера (кнопка Configure). Потім на вкладці Advanced знайти параметр з назвою Jumbo Frames (В залежності від виробника NIC, він також може називатися Packet Size, Jumbo Packets або щось схоже) і встановити його значення в 9014.

Примітка. Якщо це поле відсутнє, переконайтеся, що ваша мережева картка підтримує цей режим, і обновіть драйвера до актуальної версії.

Активація великих Ethernet пакетів jumbo packet в windows server2012 r2

Підтримка Jumbo Frames на мережевому обладнанні

Далі необхідно включити підтримку Jumbo Frames на комутаторах, які в подальшому будуть задіяна в ланцюжку передачі даних між серверами з включеним Jumbo Frames (це завдання для адміністраторів мережі).

Включаємо підтримку Jumbo Frames на віртуальному комутаторі Hyper-V

У тому випадку, якщо на хостовой ОС (гипервизор) встановлена ​​Windows Server 2012, щоб активувати Jumbo Frames для віртуального комутатора Hyper-V потрібно

  1. Відкрити редактор реєстру і розгорнути гілку HKLM SYSTEM CurrentControlSet Control Class {4D36E972-E325-11CE-BFC1-08002BE10318}
  2. Усередині їх грона містяться кілька «подкустов». Потрібно пробігтися по ним і знайти гілку, в якій значення параметра «водій»Одно«Адаптер віртуального Ethernet Hyper-V», А«Характеристика»= 0x00000029 (41)
  3. У знайденій гілці задати параметру * JumboPacket значення 9014jumbo frames для віртуального комутатора hyper-v
  4. Перезавантажте сервер для вступу змін в силу

Примітка. Гарна новина для власників Windows Server 2012 R2 – ніякої настройки віртуального комутатора для роботи з Jumbo Frames не потрібно

Активація Jumbo Frames в гостьовій ОС (Windows Server 2012)

На рівні гостьовий ОС (в нашому прикладі це Windows Server 2012) включається аналогічно Гіпервізор: в розширених налаштуваннях драйвера вкажіть, що Пакет Jumbo = 9014 байт. підтримка jumbo frames на мережевому Адаптори віртуальної машини hyper v 2012

Тестуємо роботу Jumbo Frames в Windows

У більшості випадків після виконання зазначених налаштувань перезавантаження ні гостьовий, ні хостовой машини не потрібно. Однак якщо щось не працює, в першу чергу рекомендується перезавантажити систему.

Протестувати роботу Jumbo Frames можна за допомогою простої команди ping, що дозволяє визначити що пакет великого розміру може бути переданий без дефрагментації:

ping -f –l 8972 second_jumbo_frame_server

де, прапор f – забороняє фрагментацію пакету, прапор –л задає розмір пакета (8972 – на нашому стенді це максимальний розмір пакета, що передається без дефрагментації), second_jumbo_frame_server – ім’я / ip_адрес другого сервера з включеним Jumbo Frames.

Якщо ping відпрацював успішно – вітаю, ви тільки що налаштували Jumbo Frames для віртуальної машини на Hyper-V!

Налаштування Jumbo Frames з Powershell

Зазначені вище операції можна виконати і за допомогою всемогутнього Powershell:

Наступна команда дозволяє дізнатися чи включений Jumbo Frames для мережевого адаптера з ім’ям Ethernet:

Get-NetAdapterAdvancedProperty –Name Ethernet –DisplayName “Jumbo Packet”

Якщо команда повертає Disables (RegistryValue 1514), цеозначає, що Jumbo Frames зараз не включений, і використовується стандартний розмір MTU – 1514 байт.

Задаємо збільшений розмір пакета для даного інтерфейсу:

Get-NetAdapterAdvancedProperty -Name Ethernet -DisplayName "Jumbo Packet" | Set-NetAdapterAdvancedProperty -RegistryValue "9014"

включаємо jumbo frames в Windows 2012 за допомогою poweshell

Примітка. При використанні для зберігання даних і віртуальних машин Hyper-V iSCSI сховища, активація великих пакетів Jumbo Frames для iSCSi мережевих інтерфейсів дозволяє значно підвищити швидкість передачі даних між гіпервізором і системою зберігання iSCSI і знизити завантаження ЦП.

Leave a Reply

Your email address will not be published. Required fields are marked *