Привет, сетевой друг! Сегодня разберём в чём реальная разница между SR-MPLS и SRv6 - оба Segment Routing, но внутри вообще разные решения.🟣SR-MPLS - Segment Routing поверх существующего MPLS-стека. Сегменты кодируются, как обычные MPLS-метки, промежуточные роутеры работают с привычным label swapping. Никакой новой плоскости данных - то же железо, те же ASIC, просто контрольная плоскость стала проще (нет RSVP-TE, сигнализация через IGP):
segment-routing mpls
router isis 1
segment-routing mpls
show segment-routing mpls lb
show segment-routing mpls forwarding
show mpls forwarding-table labels 16001
Работает на любом железе которое уже умеет MPLS - миграция с классического MPLS минимальна, операторы переходят без замены оборудования.
🟣SRv6 - принципиально другой подход. Сегменты кодируются как IPv6-адреса в Segment Routing Header (SRH) - расширении IPv6-заголовка. Промежуточные роутеры обрабатывают обычный IPv6-трафик, никаких меток:
segment-routing srv6
encapsulation source-address 2001:db8::1
router isis 1
segment-routing srv6
locator MAIN
show segment-routing srv6 sid
show segment-routing srv6 forwarding
Каждый сегмент это полноценный IPv6-адрес (128 бит) - в него зашиты локатор (где узел), функция (что делать с пакетом) и аргументы. Это даёт программируемость, которой нет в MPLS: один SID может означать не тупо “перейди на следующий хоп”, но и “примени QoS политику X” или “направь в конкретный VRF”.
🟣Главные различия на деле: SR-MPLS требует MPLS-capable железо везде, SRv6 работает на любом IPv6-роутере, включая белые ящики. SR-MPLS проще в диагностике - привычные MPLS-инструменты, SRv6 сложнее отлаживать, потому что SRH добавляет накладные расходы и не все инструменты его хорошо разбирают. SRv6 даёт нативную интеграцию с IPv6 без дополнительной инкапсуляции, SR-MPLS требует инкапсуляции для IPv6-трафика.
Серверная Админа | Zeroday | #SR6 #SRMPLS
