Різниця mtu cisco vs juniper

РІЗНИЦЯ MTU CISCO vs. JUNIPER

Різниця mtu cisco vs juniper
Неправильно вироблений розрахунок параметра mtu (Maximum Transmission Unit) в ядрі мережі загрожує неприємностями - як проблемами з проходженням клієнтського трафіку (особливо, якщо на машинах клієнта встановлений df-біт), так і головним болем в процесі настройки (невстановлення IGP і EoMPLS сесій).







Додаткових труднощів додає і те, що вендори по-різному інтерпретують це поняття. Сьогодні спробуємо розібратися, що до чого. Розглянемо бачення mtu від Cisco Systems і Juniper Networks, а так же специфіку пошуку несправностей, пов'язаних з цим параметром.

IEEE в рекомендації RFC 894 визначає mtu як максимальний розмір L3 пакета, який може передаватися в L2 фреймі. Тобто в його первісному розумінні це розмір L2 фрейма без його заголовка. Стандартом mtu для fast- і gigEthetnet - 1500 байт.

Існують (але не визначені в офіційній документації) і дочірні види mtu:

  • фізичний mtu (media mtu) - визначає загальний розмір L2 фреймів (разом з заголовком), тобто фактичний розмір пакета на фізичному інтерфейсі;
  • ip mtu (L3 mtu) - розмір корисного навантаження пакета L3 рівня (payload пакета + заголовок L4 рівня);
  • mpls mtu - розмір пакетів, інкапсуліруемих в MPLS мережа (різниться для L3 і L2 VPN-ів).

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

Постановка завдання і правильний розрахунок

Припустимо, на мережі використовується технологія MPLS, на основі неї побудовані як L3 так і L2 (MP-BGP based VPLS) VPN-и, застосовується MPLS TE і EoMPLS (xconnect / L2circuit). Присутні канали оператора (як L2 так і L3).







Завдання - забезпечити проходження по мережі клієнтського трафіку з mtu 1500 байт і встановленим df бітом. Мережа мультивендорної - побудована на обладнанні Cisco і Juniper.

Виходячи з цих даних, визначимо розмір пакетів всередині ядра мережі:

  • для L3 VPN 1500 клієнтських байт + 8 байт стек MPLS міток (транспортна і VPN мітки по 4 байта) + 18 байт L2 заголовок = 1526 байт
  • для L2 VPN (VPLS over MP-BGP) 1500 клієнтських байт + 18 байт клієнтський заголовок L2 + 12 байт стек MPLS міток (транспортна, VPN мітка, мітка VC) + 18 байт L2 заголовок = 1548 байт
  • для EoMPLS 1500 клієнтських байт + 18 байт клієнтський заголовок L2 + 8 байт стек MPLS міток (транспортна, мітка VC) + 18 байт L2 заголовок = одна тисяча п'ятсот сорок чотири байти
  • використання TE додає в стек додаткову мітку - 4 байта

Трафік через хмару оператора йде всередині GRE тунелів, що збільшує розмір пакетів на 20 байт транспортного L3 заголовка і 4 байта заголовка GRE.

Тепер необхідно використовувати ці дані при налаштування обладнання.

З комутаторами все просто - достатньо переконатися, що на них дозволений форвардного фреймів великого розміру (досить буде 1600 байт).

Тепер розберемося з маршрутізоторамі ..

Устаткування Cisco розглядає mtu відповідно c класичним визначенням від IEEE - за замовчуванням на інтерфейсах встановлено 1500 байт, заголовок L2 фрейма при цьому не враховується.

Обладнання від Juniper Networks вважає mtu разом з L2 заголовком (як media mtu) - за замовчуванням задано 1518 байт, де 18 байт - розмір L2 заголовка з 802.1q тегом.

Тоді на інтерфейсах пристроїв цих вендорів слід задавати значення mtu (в залежності від технології):

Щоб по-максимуму скористатися наявними можливостями MPLS і забезпечити масштабованість мережі, задаємо на інтерфейсах значення для MPLS TE.

L3 канали у оператора слід замовляти з урахуванням знайдених значень mtu для MPLS TE over GRE (на інтерфейсах в сторону оператора mtu теж треба збільшити).

Тепер необхідно перевірити, чи дійсно трафік клієнта з mtu 1500 байт «ходить» через мережу. Зробити це просто за допомогою ping'а з df бітом. Однак, є невелика тонкість - Cisco і Juniper по-різному розуміють атрибут size команди ping:

size запиту у Cisco - розмір пакета з icmp заголовком і заголовком L3

size запиту у Juniper - розмір тільки payload запиту, тобто реальний розмір пакета складе: payload + 8 байт icmp заголовок + 20 байт заголовок L3

Таким чином, перевіряємо mtu з маршрутизатора Cisco:

З маршрутизатора Juniper:

Трафік ходить, значить, з дизайном mtu на мережі ми не помилилися.







Схожі статті