32
Дмитрий Дементьев Системный инженер, SP Russia Архитектура Segment Routing

Архитектура Segment Routing

Embed Size (px)

DESCRIPTION

Segment routing- возможность задать на источнике (Ingress PE) путь прохождения пакетов по сети, с помощью последовательности сегментов в заголовке самих пакетов

Citation preview

Page 1: Архитектура Segment Routing

Дмитрий ДементьевСистемный инженер, SP Russia

Архитектура Segment Routing

Page 2: Архитектура Segment Routing

MPLS – простой или сложный?Простой Data Plane

Label/Label stack + 3 операции (push/pop/swap)

Сложный Control PlaneIGP + LDP + RSVP + Service Plane (LDP/BGP)

Требуется синхронизация протоколовЛегко сделать ошибкуСложно отлаживатьБольшая нагрузка на Control Plane

Page 3: Архитектура Segment Routing

Что хочется сделать? Сохранить и использовать MPLS Data Plane Сохранить и использовать все MPLS-сервисы

VPLS, VPNv4/v6, VPLS, FRR, L2VPN и другие Создать более удобный Control Plane для forwarding

Меньше протоколов Меньше настроек Меньше нагрузки на CPU

Сохранить возможность совместной работы с LDP и RSVP

Page 4: Архитектура Segment Routing

Что такое Segment routing?Source Routing – возможность задать на источнике (Ingress PE) путь прохождения пакетов по сети, с помощью последовательности сегментов в заголовке самих пакетов

Сегмент = Инструкция (например, «доставить трафик до узла N кратчайшим путем»)

MPLS forwarding plane Сегмент = Label

IPv6 forwarding plane Сегмент = extension header

Тема нашего разговора

The state is no longer in the network but in the packet

Page 5: Архитектура Segment Routing

Segment routing и IGP

Node Alo0: 172.16.12.1/32

Node-SID: 64

Node-SID (глобальный) Доставить пакет до узла по SPT

Adj-SID (локальный) Передать пакет через интерфейс

Prefix-SID (глобальный) Доставить пакет до префикса по SPT

Anycast-SID (глобальный) Передать пакет по подмножеству узлов

Adj-SID: 1100

Node Alo0: 172.16.12.1/32

1.1.1.1/32

Prefix-SID: 1111

Page 6: Архитектура Segment Routing

Segment routing и IGPСтандартизация

Простое расширение ISIS/OSPF Cisco/Juniper/ALU/Ericson

Page 7: Архитектура Segment Routing

Node Segment (пример)

Узел Z анонсирует node-SID 65 IGP sub-TLV extension

Все узлы инсталлируют node-SID в MPLS Data Plane

A B C

Z

D

65

FEC Z push 65

swap 65 to 65

swap 65 to 65 pop 65

Packet to Z

Packet to Z

65Packet

to Z

65Packet

to Z

65Packet

to Z

Пакет с label 65 передается к узлу “Z”по кратчайшему пути

Page 8: Архитектура Segment Routing

Adjacency Segment

B C

Pop 90039001 передать через 1-ый интерфейс

9002 передать через 2-ой интерфейс

9003 балансировать по группе интерфейсов

Pop 9001

Pop 9002

Pop 9003

Page 9: Архитектура Segment Routing

Adjacency Segment (пример)

Узел “C” анонсирует adj-SID по IGP Только узел “C” инсталлирует adj-SID в MPLS Data Plane

A B C

M N O

Z

D

P

Pop 9003 65

На узле “C” пакет с меткой 9003 должен быть передан

по каналу “C-O”

Page 10: Архитектура Segment Routing

Комбинируем сегменты

Возможность совмещать TE и ECMP Всего один протокол (IGP + extension)

A B C

M N O

Z

D

P

Pop 9003

Packet to Z

659003

Packet to Z

65

Packet to Z

Packet to Z

65

Packet to Z

659003

72

Packet to Z

659003

72

7272

65

65

Page 11: Архитектура Segment Routing

Таблица LFIB с Segment Routing

LFIB наполняется при помощи IGP (ISIS / OSPF)

Таблица коммутации постоянна(Nodes + Adjacencies) вне зависимости от числа возможных путей

Другие протоколы (LDP, RSVP, BGP) по прежнему могут программировать LFIB

PE

PE

PE

PE

PE

PE

PE

PE

P

In Label

Out Label

Out Interface

L1 L1 Intf1L2 L2 Intf1… … …L8 L8 Intf4L9 Pop Intf2

L10 Pop Intf2… … …Ln Pop Intf5

идентификаторыNode Segment

идентификаторыAdjacency Segment

Таблица коммутации остается неизменной

draft-previdi-isis-segment-routing-extensionsdraft-psenak-ospf-segment-routing-extensions

Page 12: Архитектура Segment Routing

Segment Routing и сервисы MPLS

Эффективное использование приемущества пакетных сетей (ecmp-aware shortest-path) : node segment!

Упрощение работы сети: одним работающим протоколом

меньше отсутствует LDP/ISIS

синхронизация

A B

M N

PE2PE1

Все сущестующие VPN сервисы возможно

реализовать поверх node segment для PE2

Page 13: Архитектура Segment Routing

Anycast segment для Dual Core

Используем Node-SID [65]Передаем трафик до узла “Z” используяECMP в обеих плоскостях

Используем Anycast-SID + Node-SID [111, 65]Передаем трафик до узла “Z”используя ECMP только в однойплоскости

ECMP-awareness!

Page 14: Архитектура Segment Routing

Основные отличия SR от существующей модели MPLS

Простой Control Plane (не требуется LDP и RSVP) Если требуется Segment routing может работать параллельно с

LDP/RSVP— draft-filsfils-spring-segment-routing-ldp-interop-00

Per-tunnel forwarding state только на ingress узле. Нет per-tunnel states на mid-point (как в RSVP MPLS TE)

Возможность сочетать ECMP и explicit-routing

Простой Control Plane(только IGP + extension)

Поддержка ECMPпомогает масштабироваться

Page 15: Архитектура Segment Routing

Topology Independent LFA FRR

Segment Routing позволяет гарантироватьLFA FRR в любой топологии

поддержка ассиметричных метрикОтсутствует необходимость в directed LDP сесии для P node

RLFAДля симметричных топологий:

Отсутствие дополнительных вычислений Простой стек меток для восстановления Node segment to P node Adjacency segment from P to Q

Backbone

C1 C2

E1 E4

E3E21000

Node segment to P node

Default metric: 10

Page 16: Архитектура Segment Routing

Оптимальный расчет FRR маршрута

Page 17: Архитектура Segment Routing

Сравнение технологий для рачета FRR

Page 18: Архитектура Segment Routing

Применение Segment Routing в SDN

Расчитанный путь - ABCOPZ. Требуемая полоса принята во

внимание. Обходим перегрузки в сети.

Перегрузка66

6568

Для путь A-Z стек меток{66, 68, 65}

Сеть проста, программируема и способна реагировать на возникающие события

2Gb/s от A до Z плиз

BGP-LS, Netconf, SNMP

Нет per-tunnel state на mid-point можно перейти к tunnel per-applicationECMP + Explicit routing позволяет уменьшить количество TE tunnelsНе нужно программировать mid-point проще контролировать сеть

18

Page 19: Архитектура Segment Routing

Расширение PCE для Segment Routing

PCEPSegment List:: 10,20,30,40

Stateful PCE

Топология сети

StatefulPCC

In Out IntL1 L1 Intf1… … …L7 L7 Int3L8 Pop Intf3… … …L9 Pop Intf5

ПриложениеЗапрос

маршрута

draft-sivabalan-pce-segment-routing

Segment Routing позволяет задать маршрут на базе SR IDs распространяемых IGP

PCE расчитывает и задает маршрут в виде последовательности SR IDs (меток)

PCC коммутирует трафик добавляя список SR IDs к пакетам

Предварительная сигнализация пути не производиться

Размерность таблиц коммутации постоянная и минимальная

Возможность визуализации путей

Состояния маршрутов на P-устройствах отсутствует – вся информация в пакете

идентификаторыNode Segment

идентификаторыAdjacency Segment

Размер таблицкоммутации постояннен

База маршрутов (LSP)

19

Page 20: Архитектура Segment Routing

Критика Segment Routing

Проблема: HW ограничения глубины стекаВ большинстве случаев для TE достаточно 2-3 сегментаДля NG NPU глубина стека >10 лейбловПроблема: Segment routing TE не учитывает ресурсыЭто так, но для этого есть контроллер

Page 21: Архитектура Segment Routing

Еще один важный слайд

MPLS-метки лишены собственной семантикиСегмент может выражать любую инструкцию

• Service• Context• IGP-based forwarding construct• BGP-based forwarding construct• Locator

Page 22: Архитектура Segment Routing

SR и управление внешней связностью(Egress peering engineering)

A

B

D

ZAS1

AS2

AS3

AS4E

C

http://tools.ietf.org/html/draft-filsfils-spring-segment-routing-central-epe-01Cisco, Facebook, Yandex

PeerNode SID - Передать пакет через заданный пирам

PeerAdj SID - Передать пакет через заданный интерфейс

PeerSet SID - Балансировать трафик по группе пиров

Определяем точку выхода из AS на ingress router

Page 23: Архитектура Segment Routing

Реализация Segment Routing на платформе ASR9K

Page 24: Архитектура Segment Routing

Функционал Segment Routing: фазы IS-IS IPV4 MPLS nodal segment

Allow to express dynamic path IS-IS IPv4 Segment Routing chip in the nigth with LDP deployement IS-IS IPv4 LFA and rLFA FRR

XR 5.2.0

IS-IS MPLS Nodal and Adjacency segment Allows to express dynamic and explicit path

IS-IS Segment Routing interworking with LDP IS-IS IPv4/IPv6 Topology Independent Loop Free Alaternat Fast ReRoute OSPFv2 Nodal segment

XR 5.2.2

Page 25: Архитектура Segment Routing

router isis ABCis-type level-2-onlynet 49.0000.1720.1625.5001.00address-family ipv4 unicastmetric-style widesegment-routing mpls

!interface Loopback0passiveaddress-family ipv4 unicastprefix-sid absolute 16001

!!interface TenGigE0/0/2/0point-to-pointaddress-family ipv4 unicast!interface TenGigE0/0/3/0address-family ipv4 unicast

Ipv4 Prefix-SID value for loopback0

Wide metrics

enable SR on all ipv4 interfaces in this IS-IS instance

Adjacency-SIDs will automatically be allocated for all adjacencies

Пример конфигурации для IS-IS

Page 26: Архитектура Segment Routing

RP/0/0/CPU0:iosxrv-2#show isis database verbose iosxrv-2.00-00IS-IS 1 (Level-1) Link State DatabaseLSPID LSP Seq Num LSP Checksum LSP Holdtime ATT/P/OLxrvr-2.00-00 0x00000007 0x3c0a 671 0/0/0Area Address: 49.1111NLPID: 0xccHostname: xrvr-2IP Address: 1.0.0.2Router Cap: 1.0.0.2, D:0, S:0Segment Routing: I:1 V:0, SRGB Base: 16000 Range: 8000

Metric: 10 IS-Extended xrvr-1.00Interface IP Address: 10.0.128.6Neighbor IP Address: 10.0.128.5ADJ-SID: F:0 B:0 V:1 L:1 S:0 weight:0 Adjacency-sid:24000

Metric: 10 IS-Extended xrvr-3.00Interface IP Address: 10.0.0.1Neighbor IP Address: 10.0.0.2ADJ-SID: F:0 B:0 V:1 L:1 S:0 weight:0 Adjacency-sid:24001

Metric: 0 IP-Extended 1.0.0.2/32Prefix-SID Index: 2, R:0 N:0 P:0 E:0 V:0 L:0

Metric: 10 IP-Extended 10.0.0.0/30Metric: 10 IP-Extended 10.0.128.4/30

Total Level-1 LSP count: 1 Local Level-1 LSP count: 0

SRGB starts at 16,000 and ends at 23,999

I:1 ipv4V:0 no ipv6

Adj SID 24,000F:0 ipv4

V:1 value, not indexL:1 local significance

LSP ID

Prefix-SID index “2” for 1.0.0.2/32R:0 not propagatedN:0 not a node SID

P:0 PHP onE:0 no explicit-Null label

V:0 indexL:0 global significance

Проверка IS-IS Database

Page 27: Архитектура Segment Routing

Segment Routing вместе с LDP

Приоритет использования меток (SR или же LDP) может быть явно задан при конфигурации IS-IS

По умолчанию используем LDP

router isis 1address-family ipv4 unicastsegment-routing mpls sr-prefer

Page 28: Архитектура Segment Routing

RP/0/RSP0/CPU0:asr9000-p1#show mpls interfaces Mon Oct 7 07:14:32.151 PDTInterface LDP Tunnel Static Enabled -------------------------- -------- -------- -------- --------Loopback0 No No No YesTenGigE0/0/2/0 No No No YesTenGigE0/0/2/1 No No No YesGigabitEthernet0/0/0/0 No No No YesGigabitEthernet0/0/0/1 No No No YesRP/0/RSP0/CPU0:asr9000-p1#

Проверка интерфейсов для MPLS Forwarding

Interfaces enabled for MPLS forwarding

No interfaces enabled for LDP or

RSVP-TE

Page 29: Архитектура Segment Routing

Отображение MPLS ForwardingRP/0/RSP0/CPU0:asr9000-pe1#show mpls forwarding Tue Oct 8 10:48:21.387 UTCLocal Outgoing Prefix Outgoing Next Hop Bytes Label Label or ID Interface Switched ------ ----------- ------------------ ------------ --------------- ------------16000 Pop No ID Te0/0/2/1 172.16.0.3 0 16001 Pop No ID Te0/0/2/0 172.16.0.0 0 16002 Aggregate RED: Per-VRF Aggr[V] \

RED 0 225465 Aggregate No ID default 0 225466 Pop No ID Te0/0/2/0 172.16.0.0 0 225467 225467 No ID Te0/0/2/1 172.16.0.3 0 225565 Pop No ID Te0/0/2/1 172.16.0.3 0 225566 225566 No ID Te0/0/2/0 172.16.0.0 0

225566 No ID Te0/0/2/1 172.16.0.3 0 RP/0/RSP0/CPU0:asr9000-pe1#

Adjacency SIDs

Prefix (node) SIDs

Page 30: Архитектура Segment Routing

Segment Routing – сбалансированный подход

BalanceDistribution-only Centralized-only

RSVP-TEНе оптимальный и

сложный в эксплуатации

OpenFlowМасштабируемость?

Быстрые сроки развертывания?

Segment RoutingDistribution: Simple, Prefix Segments, TILFACentralization: Swift & optimum Tactical TE

Page 31: Архитектура Segment Routing

Активная работа в IETF Работа в рамках SPRING WG 15 IETF drafts released

Развитие технологии

www.segment-routing.netПолный перечень материалов

Orange, Deutche Telecom, British Telecom, Comcast, Google, Facebook, Yandex,

Alcatel-Lucent, Ericson, Juniper, Huawei

Page 32: Архитектура Segment Routing

CiscoRu Cisco CiscoRussia

Ждем ваших сообщений с хештегом#CiscoConnectRu

Пожалуйста, используйте код для оценки доклада

2248Ваше мнение очень важно для нас

Спасибо за внимание!

24.11.2014 © 2014 Cisco and/or its affiliates. All rights reserved.

Дементьев Дмитрий[email protected]