2. apresentação minicurso "roteamento por segmentos

214
Roteamento por Segmentos: Conceitos, Desafios e Aplicações Práticas Departamento de Eletrônica Escola Politécnica Programa de Engenharia Elétrica COPPE Universidade Federal do Rio de Janeiro Antonio José Silvério, Miguel Elias M. Campista, Luís Henrique M. K. Costa http://www.gta.ufrj.br 1 Este trabalho contou com suporte da Embratel, CAPES, CNPq e FAPERJ

Upload: duongquynh

Post on 14-Feb-2017

225 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 2. Apresentação Minicurso "Roteamento por Segmentos

Roteamento por Segmentos: Conceitos, Desafios e Aplicações Práticas

Departamento de Eletrônica – Escola Politécnica Programa de Engenharia Elétrica – COPPE

Universidade Federal do Rio de Janeiro

Antonio José Silvério, Miguel Elias M. Campista, Luís Henrique M. K. Costa

http://www.gta.ufrj.br

1

Este trabalho contou com suporte da Embratel, CAPES, CNPq e FAPERJ

Page 2: 2. Apresentação Minicurso "Roteamento por Segmentos

Roteiro

• Introdução

• Limitações das Tecnologias das Redes de Núcleo

• Conceitos de Redes Definidas por Software

• Roteamento por Segmentos

• Experimentação Prática

• Considerações Finais e Direções Futuras

2

Page 3: 2. Apresentação Minicurso "Roteamento por Segmentos

3

Roteiro

• Introdução

• Limitações das Tecnologias das Redes de Núcleo

• Conceitos de Redes Definidas por Software

• Roteamento por Segmentos

• Experimentação Prática

• Considerações Finais e Direções Futuras

Page 4: 2. Apresentação Minicurso "Roteamento por Segmentos

4

Introdução

• Operação e Configuração da Rede Backbone da Operadora de Telecomunicações

Baseado em previsões

Manual

Meses

Comprimento de onda (100G)

Baseado em análise do tráfego real

Automático

Segundos

Flexível (OM – 100G)

Cenário Atual Cenário Futuro (desejado)

Matriz de Tráfego

Granularidade de

enlaces

Tempo de comercialização

Ajuste da Rede

Page 5: 2. Apresentação Minicurso "Roteamento por Segmentos

5

Rede de Roteadores de Núcleo da Operadora de Telecom.

• Exemplo de uma Operadora de Telecomunicações:

– Número de nós: 66

– Número de enlaces físicos: 2.130

– Banda Média por enlace: 3,24 Gbps

– Quantidade de túneis MPLS: 604

– Tempo para planejamento e implantação dos túneis considerando alterações de nós e enlaces da rede : 6 meses

– Reconfiguração dos túneis caso ocorra falha (falhas planejadas): 2 a 3 minutos de convergência

Page 6: 2. Apresentação Minicurso "Roteamento por Segmentos

6

PROBLEMAS !

Operação e Administração complexas Uso não otimizado de recursos da rede Possibilidade de perda de tráfego e qualidade

Rede de Roteadores de Núcleo da Operadora de Telecom.

Page 7: 2. Apresentação Minicurso "Roteamento por Segmentos

7

Rede Atual de Roteadores de Núcleo das Operadoras

• Baseada no protocolo MPLS (Multi Protocol Label Switching)

– Solução para o problema da escala das tabelas de roteamento

– Orientação a conexão e suporte de múltiplos protocolos

– Encaminhamento de pacotes eficiente através de comutadores baseados em ASICs (Application Specific Integration Circuits)

– Comutação baseada em rótulos (Labels)

• Novas aplicações

– Engenharia de Tráfego (Traffic Engineering - TE)

– Qualidade de Serviço (QoS)

– Encaminhamento com restrições

– Redes Virtuais Privadas (Virtual Private Network - VPN)

Page 8: 2. Apresentação Minicurso "Roteamento por Segmentos

8

Roteador de Núcleo IP/MPLS

• Formado por um plano de controle e de encaminhamento rápido de pacotes baseado em circuitos ASIC

Gerência da Rede MPLS

Lógica de Controle BGP OSPF IS-IS

Sistema Operacional (SO)

Hardware Dedicado

R O T E A D O R

Barramento proprietário

Telnet, SSH, Web, SNMP

Roteador IP/MPLS de Núcleo

Driver

Page 9: 2. Apresentação Minicurso "Roteamento por Segmentos

• Topologia em malha parcial ou completa

−Caminhos na rede IP/MPLS são denominados túneis (unidirecionais)

−Túneis de proteção (Backup Tunnel) ou balanceamento de tráfego por túnel

−Engenharia de Tráfego e QoS aplicadas aos túneis

Malha “Lógica” de túneis

Roteadores de Borda

Roteadores Intermediários

Rede Atual de Roteadores de Núcleo das Operadoras

Page 10: 2. Apresentação Minicurso "Roteamento por Segmentos

10

Malha Lógica de Túneis e Rede de Enlaces Físicos

A B

C D

A B

C D

Malha Lógica de Túneis Rede física de enlaces

Túnel A-B

A B

Túnel A-D

A B D

Page 11: 2. Apresentação Minicurso "Roteamento por Segmentos

11

A B

C D

Malha Lógica de Túneis n = número de nós

Quantidade total de Túneis Unidirecionais =

2

2 nn Quantidade total de Túneis Bidirecionais =

nn 2

Quantidade de túneis da ordem de n2

Cálculo de Túneis TE

Page 12: 2. Apresentação Minicurso "Roteamento por Segmentos

12

Exemplo de Cálculo de Túneis TE com Balanceamento • Utilizado pelas Operadoras para proteção dada por um plano

de controle e tráfego balanceando túneis em diferentes enlaces físicos

A B

C D

Rede física de enlaces

Túneis para balanceamento

Quantidade de Túneis Unidirecionais = )( 2 nnk

n = número de nós k = número de túneis para balanceamentos entre A e B

Quantidade de túneis da ordem de k.n2

Page 13: 2. Apresentação Minicurso "Roteamento por Segmentos

• Configuração de túneis automática • Ferramenta de planejamento “off-line” • Não otimiza os recursos da rede em tempo real !

• Configuração de túneis para proteção não compartilham capacidade da rede : • Consumo de recursos sem otimização para proteção ! Roteadores de Borda

Roteadores Intermediários

Desafios para as Operadoras

Page 14: 2. Apresentação Minicurso "Roteamento por Segmentos

14

• Malha de túneis lógica

desacoplada da rede física

RJO

SPO

CTA

PAE

BHE

SDR

RCE

FLA

BSA

RPO

RJO

SPO

CTA

PAE

BHE

SDR

RCE

FLA

BSA

RPO

Rede IP/MPLS desacoplada da

Rede física

Túnel Primário Túnel Backup

Desafios para as Operadoras

Page 15: 2. Apresentação Minicurso "Roteamento por Segmentos

15

Solução para os Desafios da Rede da Operadora

Por acaso é o Roteamento por

Segmentos ?

Page 16: 2. Apresentação Minicurso "Roteamento por Segmentos

16

Propostas de Evolução da Rede de Roteadores de Núcleo

RJO

SPO

CTA

PAE

BHE

SDR

RCE

FLA

BSA

RPO

Túnel Primário Túnel Backup

SDN

PCE – PATH COMPUTATION ELEMENT • Roteamento por Segmentos + Redes Definidas por Software

−Simplificação do roteamento, configuração e manutenção dos túneis

−Manutenção de estados apenas nos Roteadores de borda da rede

−Cálculo dos caminhos baseado em uma plataforma de Redes Definidas por Software

−Engenharia de tráfego otimizada

−Uso racional dos recursos da rede

Page 17: 2. Apresentação Minicurso "Roteamento por Segmentos

17

O que é o Roteamento por Segmentos? •Roteamento por Segmentos (Segment Routing - SR) É um protocolo de roteamento pela origem

O roteador de origem conhece o caminho até o destino

Page 18: 2. Apresentação Minicurso "Roteamento por Segmentos

18

• São identificadores do caminho completo ou de trechos do caminho

Segmento A-E

Segmento E-F

Caminho A-F = Segmento A-E + Segmento E-F

/

O que são Segmentos ?

Page 19: 2. Apresentação Minicurso "Roteamento por Segmentos

Roteiro

• Introdução

• Limitações das Tecnologias das Redes de Núcleo

• Conceitos de Redes Definidas por Software

• Roteamento por Segmentos

• Experimentação Prática

• Considerações Finais e Direções Futuras

19

Page 20: 2. Apresentação Minicurso "Roteamento por Segmentos

20

Roteamento Atual de Redes TCP/IP

• Encaminhamento de pacotes é feito salto a salto

• Cada roteador possui sua tabela de roteamento populada com informações obtidas da análise do cabeçalho IP

Page 21: 2. Apresentação Minicurso "Roteamento por Segmentos

21

• As rotas são calculadas por um protocolo de roteamento a partir das informações das tabelas de roteamento

• As tabelas de roteamento precisam ser mantidas e atualizadas, representando manutenção de estados destas tabelas em todos os roteadores

Roteamento Atual de Redes TCP/IP

Page 22: 2. Apresentação Minicurso "Roteamento por Segmentos

22

• Como é o Roteamento atual das Redes TCP/IP ?

Tamanho da Tabela de Roteamento é uma limitação !

Tabelas Maiores: • Maior tempo de busca e seleção de rota

• Maior processamento • Pouca escabilidade

Decisão da rota é feita salto a salto

(hop by hop)

Roteamento Atual de Redes TCP/IP

Page 23: 2. Apresentação Minicurso "Roteamento por Segmentos

Evolução do Roteamento em Redes TCP/IP

23

• Roteamento na Internet

– Nos anos 90 forte crescimento das redes TCP/IP

– Baixo desempenho dos roteadores no núcleo da rede

• Encaminhamento de pacotes é baseado apenas no endereço de destino

• Em todos os saltos da rede é realizada a inspeção na tabela de roteamento (lookup)

• Roteadores com tabelas de roteamento completas (full routing)

Page 24: 2. Apresentação Minicurso "Roteamento por Segmentos

Introdução às Redes IP/MPLS

24

• Motivação:

– Convergência da comunicação digital (voz, dados e vídeo)

– Integração com redes legadas como Frame Relay e ATM

• Capacidade de comutação rápida com hardware proprietário (ASIC – Application Specific Integration Circuit)

• Possui Plano de Controle e de Encaminhamento de Pacotes em cada nó de rede

Page 25: 2. Apresentação Minicurso "Roteamento por Segmentos

• Formada por Roteadores de Borda e Roteadores intermediários

– Roteadores de Borda: Tabela de Roteamento IP (Forwarding Information Base - FIB) + Tabela de Rótulos (Label Forwarding Information Base - LFIB)

– Roteadores Intermediários: apenas Tabela de Rótulos (Label Forwarding Information Base - LFIB)

25

Roteadores de Núcleo da Rede IP/MPLS

Page 26: 2. Apresentação Minicurso "Roteamento por Segmentos

Protocolos de Roteamento OSPF, BGP...

Tabela de Roteamento (RIB)

Protocolo de Controle MPLS para o roteamento

IP LDP (LIB)

Tabela de Rótulos ou Labels (LFIB)

Pla

no

de

Co

ntr

ole

Plano de Encaminhamento

Troca de Informação com outros roteadores

Troca de Informação com outros roteadores

Entrada de pacotes MPLS (IN)

Saída de pacotes IP (OUT)

Tabela de Roteamento (FEC) (FIB)

Saída de pacotes MPLS (OUT)

Entrada de pacotes IP (IN)

Roteador de Borda do Núcleo da Rede

Tabelas do MPLS Plano de Controle: RIB (Routing Information Base) LIB (Label Information Base)

26

Roteadores de Borda do Núcleo da Rede

Tabelas do MPLS Plano de Encaminhamento: FIB (Forwarding Information Base) LFIB (Label Forwarding Information Base)

Page 27: 2. Apresentação Minicurso "Roteamento por Segmentos

Protocolos de Roteamento OSPF, BGP...

Tabela de Roteamento (RIB)

Protocolo de Controle MPLS

para o roteamento IP LDP (LIB)

Tabela de Rótulos ou Labels (LFIB)

Pla

no

de

Co

ntr

ole

Plano de Encaminhamento

Troca de Informação com outros roteadores

Troca de Informação com outros roteadores

Entrada de pacotes MPLS (IN)

Saída de pacotes MPLS (OUT)

Roteador Intermediário de Núcleo de Rede 27

Roteadores Intermediários do Núcleo da Rede

Tabelas do MPLS Plano de Controle: RIB (Routing Information Base) LIB (Label Information Base)

Tabelas do MPLS Plano de Encaminhamento: FIB (Forwarding Information Base) LFIB (Label Forwarding Information Base)

Page 28: 2. Apresentação Minicurso "Roteamento por Segmentos

28

Rótulo MPLS

• O pacote IP recebe um rótulo (Label) entre o cabeçalho IP e o cabeçalho de camada inferior (camada 2), denominado de cabeçalho de enchimento (Shim Header)

• Estrutura do rótulo MPLS de 32 bits:

– Os primeiros 20 bits representam o rótulo 220 = 1.048.575 diferentes rótulos

– Os 3 bits seguintes são EXP bits (Experimental Bits) usados para classes de serviços

– 1 bit S (Bottom of Stack) indicando se o rótulo é o inferior na pilha de rótulo (S = 1)

– 8 últimos bits para TTL (Time to Live) como no pacote IP

Page 29: 2. Apresentação Minicurso "Roteamento por Segmentos

• Rótulos 0-15 : reservados

• Rótulos 16 a 1.048.575 são usados para identificar os circuitos virtuais da rede MPLS denominados LSPs (Label Switched Paths)

29

Estrutura do Rótulo MPLS

Page 30: 2. Apresentação Minicurso "Roteamento por Segmentos

30

Empilhamento de Rótulos MPLS (Label Stack)

Outer ou Top Label (S=0) Inner ou Bottom

Label (S=1)

Implementação de Serviços

com empilhamento de rótulos

Page 31: 2. Apresentação Minicurso "Roteamento por Segmentos

• Serviços de Rede IP/MPLS

– Serviços em Redes IP/MPLS usam empilhamento de rótulos:

• Redes Privativas Virtuais (Virtual Private Networks - VPN)

• Linhas Alugadas Virtuais (Virtual Leased Lines - VLL ou Virtual Private LAN Service - VPLS)

• Engenharia da Tráfego, na identificação de túneis

• Transporte de outras tecnologias sobre MPLS (Any Transport Over MPLS - AToM)

– Rede MPLS é considerada

uma Rede Multiserviço

31

Rede IP/MPLS como Rede Multiserviço

Page 32: 2. Apresentação Minicurso "Roteamento por Segmentos

• LDP (Label Distribution Protocol)

– Distribui e mantém os rótulos estáticos ou dinâmicos

• IGP (Interior Gateway Protocol)

– Faz a descoberta dos caminhos

– OSPF (Open Shortest Path First) e IS-IS (Intermediate System to Intermediate System)

• RSVP (Resource Reservation Protocol)

– Requisita a reserva de um fluxo de dados com determinada garantia/reserva de banda

• MP-BGP (Multiprotocol Border Gateway Protocol)

– Faz a relação entre a instância de roteamento e o rótulo para um serviço VPN

32

Protocolos do Plano de Controle da Rede IP/MPLS

Page 33: 2. Apresentação Minicurso "Roteamento por Segmentos

• Composta de Roteadores Cliente e Roteadores de Núcleo da Rede classificados em Roteadores de Borda e Roteadores Intermediários

– Roteador Cliente

– Roteador de Borda

– Roteador Intermediário

• O caminho virtual formado pela sequência de rótulos é denominado LSP (Label Switched Path), que é unidirecional

33

Arquitetura da Rede IP/MPLS

Page 34: 2. Apresentação Minicurso "Roteamento por Segmentos

Roteador Cliente

• Denominado CE (Customer Edge)

• Roteador IP cliente da Rede MPLS (Ex.: em uma VPN)

• Não manipula rótulos, somente endereços IP

34

Page 35: 2. Apresentação Minicurso "Roteamento por Segmentos

Roteador de Borda

35

• Denominado PE (Provider Edge) ou LER (Label Edge Router)

• Insere e retira rótulos dos pacotes

• Mantém a tabela FIB (Forwarding Information Base) que associa o endereço IP (Forwarding Equivalence Class - FEC) de destino com um rótulo de entrada, preenchida por um IGP (Ex.: OSPF)

• O protocolo LDP distribui os rótulos, trocando informações da FEC e rótulos associados para os Roteadores de Borda e Roteadores Intermediários

Page 36: 2. Apresentação Minicurso "Roteamento por Segmentos

• Denominado P (Provider) ou LSR (Label Switch Router)

• Apenas comuta rótulos

• Mantém a tabela LFIB (Label Forwarding Information Base) que associa os rótulos para encaminhamento dos pacotes nas interfaces determinadas pelo caminho

36

Roteador Intermediário

Page 37: 2. Apresentação Minicurso "Roteamento por Segmentos

LSR LER

LSR

LSR

LSR

LER CE CE

Rede de Roteadores de Núcleo IP/MPLS

LSR

LSP

CE – Customer Edge LER – MPLS Label Edge Router ou PE – Provider Edge LSR – MPLS Label Switch Router ou P – Provider LSP – Label Switched Path Enlace de Fibra Óptica

Sistema Autônomo Operadora

Pacote IP

Pacote MPLS

Diferentes rótulos MPLS 37

Arquitetura de Rede IP/MPLS

LDP

Page 38: 2. Apresentação Minicurso "Roteamento por Segmentos

38

• Alocação de rótulo

– Aloca um determinado rótulo para uma FEC, efetuado pelo Roteador de Borda

Operações com Rótulos MPLS

Page 39: 2. Apresentação Minicurso "Roteamento por Segmentos

• Imposição ou inserção do rótulo (Label Imposing ou Label Push)

– Adiciona ao cabeçalho IP um rótulo MPLS, efetuado pelo Roteador de Borda

• Troca de rótulo (Label Swap)

– Efetuado pelo Roteador Intermediário baseando-se na informação da LFIB

• Retirada do Rótulo (Label Pop):

– Remove o rótulo mais externo (top label) da pilha MPLS

– Efetuado pelo Roteador de Borda

39

Operações com Rótulos MPLS

Page 40: 2. Apresentação Minicurso "Roteamento por Segmentos

LSR

1 1 1 1 2 2 1 3

1

3

2

2

2

1

Ip Origem: 100.10.0.1 Ip Destino: 200.20.0.1

200.20.0.1 200.20.0.1 78 43 57

LSP

IPv4 Pacote IPv4

IPv4 L Pacote MPLS

LSR LER CE LER CE LSR 200.20.0.1

Lbl IN

Lbl Out

68 54

IP dest Lbl IN

Lbl Out

200.20.0.1 - 78

100.10.0.1 34

IP dest Lbl IN

Lbl Out

200.20.0.1 57 -

100.10.0.1 - 32

Lbl IN

Lbl Out

78 43

54 34

Lbl IN

Lbl Out

43 57

32 68

IP dest

Porta

100.10.0.1/24 local

200.20.0.1/24 1

IP dest

Porta

100.10.0.1/24 1

200.20.0.1/24 local 40

Operações com Rótulos MPLS

100.10.0.1

200.20.0.1 200.20.0.1 200.20.0.1

FEC

FIB LFIB

Label Push

Label Swap

Label Swap Label

Pop

Page 41: 2. Apresentação Minicurso "Roteamento por Segmentos

• O principal serviço em redes IP/MPLS é a Rede Privativa Virtual (Virtual Private Network - VPN)

• Topologias do tipo matriz-filial (hub and spoke) ou malha parcial e completa

• Possui 2 tipos básicos: VPN L3 e VPN L2

41

Serviços de Rede IP/MPLS

Page 42: 2. Apresentação Minicurso "Roteamento por Segmentos

• Permite troca de protocolo de roteamento entre o Roteador Cliente (CE) e o Roteador de Borda (PE)

• Roteador Cliente utiliza protocolos de roteamento tradicionais como OSPF, RIP e BGP

• Instância de roteamento virtual (Virtual Routing and Forwarding Tables - VRF) faz a associação entre a VPN e as portas físicas do Roteador de Borda (PE)

• Roteadores de Borda (PE) trocam informações de roteamento aprendidas dos Roteadores Cliente (CE) diretamente através do protocolo MP-BGP

42

Rede Privativa Virtual L3

Page 43: 2. Apresentação Minicurso "Roteamento por Segmentos

43

Rede Privativa Virtual L3

• A Rede IP/MPLS funciona como uma rede dedicada para o Roteador Cliente (CE), podendo ter o mesmo endereço IP privado se estiverem em VRFs distintas

• Utiliza 2 rótulos:

• rótulo mais externo referente ao rótulo inserido pelo Roteador de Borda (PE)

• rótulo mais interno referente à VPN do cliente

Page 44: 2. Apresentação Minicurso "Roteamento por Segmentos

• Funcionalidade PHP (Penultimate Hop Popping) onde o penúltimo Roteador de Borda retira o rótulo mais externo, reduzindo o processamento de mais um rótulo além do rótulo da VPN

• Funcionalidade PHP pode ser

• “Implicit Null”: identificada com rótulo especial 3, as informações de QoS são perdidas

• “Explicit Null”: identificada com rótulo especial 0, as informações de QoS são lidas pelo Roteador de Borda

44

Rede Privativa Virtual L3

Page 45: 2. Apresentação Minicurso "Roteamento por Segmentos

LER

LER

LER

LSR

LSR

Rede IP/MPLS

Cliente A Cliente A

Cliente A

Cliente B Cliente B

10.2.1.0/24

10.2.1.0/24

10.5.1.0/24

10.5.1.0/24

10.3.1.0/24

OSPF

BGP

ESTÁTICA

BGP

MP-BGP

BGP

OSPF

10.2.1.1

10.2.1.0 79 38

10.2.1.0 79 43

10.2.1.0

FEC Next Hop Label 10.2.1.0 190.5.1.1 79 190.5.5.1 38

190.5.5.1

200.4.1.1

CE

45

Rede Privativa Virtual L3

VRF do cliente A

VRF do cliente B

IPv4 Pacote IPv4

IPv4 L Pacote MPLS com aplicação VPN L

Page 46: 2. Apresentação Minicurso "Roteamento por Segmentos

• Roteadores de Borda (PE) trocam informações de camada 2, e as informações de camada 3 são trocadas entre os Roteadores Cliente (CE)

• Podem ser ponto a ponto denominada VLL (Virtual Leased Line) e ponto-multiponto denominada VPLS (Virtual Private LAN Service)

• Transporte de quadros é feito por um circuito virtual (VC) e o LSP (Label Switched Path) age como um “túnel”

• São usados 2 rótulos, o mais interno representa o VC e o mais externo o túnel

46

Rede Privativa Virtual L2

Page 47: 2. Apresentação Minicurso "Roteamento por Segmentos

BGP

LER

LSR

LSR

Cliente A CE

Quadro L2 Ethernet

Rótulo do túnel (LSP)

LER

LSR

LSR

Rede IP/MPLS

Cliente A

IPv4

Eth

T

IPv4

VC Rótulo do pseudowire (VC)

Pseudowire

IPv4

47

Rede Privativa Virtual L2

Page 48: 2. Apresentação Minicurso "Roteamento por Segmentos

• Conjunto de mecanismos aplicado aos Roteadores Cliente (CE), e nos Roteadores de Núcleo

• Classes de serviços indicam a prioridade do fluxo de dados

• Classes de serviço atendidas em filas

• Classes de serviço no IPv4: campo ToS (Type of Service)

– 3 bits mais significativos: IP Precedence

– 6 bits mais significativos: DSCP (Diffserv Code Point)

• Classes de serviço no MPLS: EXP Bits

48

QoS em Redes IP/MPLS

Page 49: 2. Apresentação Minicurso "Roteamento por Segmentos

7 6 5 4 3 2 1 0

ID Offset TTL Proto FCS IP SA IP DA Data Len Version Length

ToS Byte

DiffServ Code Point (DSCP) IP ECN

Pacote IPv4

IP Precedence Type of Service Standard IPv4

Extensões DiffServ

DSCP

IPv4 Packet MPLS

EXP

IPv4 Packet

49

QoS em Redes IP/MPLS

Page 50: 2. Apresentação Minicurso "Roteamento por Segmentos

• Desenvolvido para resolver problemas de congestionamento, otimização de banda e convergência de rede

• Sugere rotas diferentes do IGP

• Cálculo de caminhos baseados em restrições como banda disponível, latência e perda de pacotes

• Cálculo de caminho realizado pelo PCE (Path Computation Element) desempenhado pelo plano de controle dos Roteadores de Núcleo

53

Engenharia de Tráfego em Redes IP/MPLS

Page 51: 2. Apresentação Minicurso "Roteamento por Segmentos

54

Engenharia de Tráfego: MPLS-TE

• Conceito de aplicação de engenharia de tráfego no MPLS, denominado MPLS-TE (Traffic Engineering)

• Implementação do caminho através de túneis unidirecionais (Túnel TE)

• O túnel TE é iniciado no Roteador de Núcleo de origem (Head End LSR) e terminado no Roteador de Núcleo de destino (Tail End LSR)

Page 52: 2. Apresentação Minicurso "Roteamento por Segmentos

• Reserva de recursos feita pelo protocolo de reserva de recursos RSVP-TE (Resource reSerVation Protocol - Traffic Engineering)

– Mensagens de caminho (Path Messages) enviado pelo Roteador de Núcleo de origem

– Mensagens de reserva (Resv Messages) pelo Roteador de Núcleo de destino

– O RSVP-TE garante o QoS para cada fluxo de dados

– O RSVP-TE utiliza LSPs configurados de forma dinâmica ou estática com o OSPF-TE (Open Shortest Path First - Traffic Engineering)

55

Engenharia de Tráfego: Reserva de Recursos

Page 53: 2. Apresentação Minicurso "Roteamento por Segmentos

R1

R2

R3

R4

R5

R8 150

50

Encontre o caminho mais

curto até R8 com 80 Mbps

200

100

100 100

80

LSR head end

LSR tail end

Base de Dados Topologia TE

R7

Path Msg

Resv Msg

IP L50 L10

R6

Túnel

LER A

LER Z

IP L26 L12 IP L26 L92 IP L26 L89 IP L26 L65 IP L26 IP L52

Túnel

LSP

56

Engenharia de Tráfego: MPLS-TE

LER A LER Z

R1 R2 R5 R6 R7 R8

Page 54: 2. Apresentação Minicurso "Roteamento por Segmentos

Path Msg

Resv Msg

Head End LSR

Tail End LSR

10.1.1.1/8

FIB: 10.0.0.0 -> 50

FIB: 10.0.0.0 -> pop

FIB: 10.0.0.0 -> 52

FIB: 10.0.0.0 -> 26,12

FIB: 10.0.0.0 -> 26,10

LFIB: 50 -> 26 push 10

LFIB: 26 -> 26 10 -> 12

LFIB: 50 -> 26 pop 12 rótulos do túnel

rótulos aprendidos pelo LDP

LSP LDP

57

Engenharia de Tráfego: MPLS-TE

Page 55: 2. Apresentação Minicurso "Roteamento por Segmentos

• É um requisito da Engenharia de Tráfego o re-roteamento de um túnel baseado em políticas administrativas

• Mecanismo de re-roteamento rápido FRR (Fast Re-route) previne falhas de nós e enlaces

• Implementações:

– Configuração de forma manual ou automática um túnel primário (Primary Tunnel) e um túnel de proteção (Backup Tunnel) com caminhos disjuntos

– Túneis disjuntos com balanceamento de tráfego

– Os túneis primários e de proteção devem evitar utilizar o mesmo recurso físico, denominado SRLG (Shared Risk Link Group)

58

Restauração em Redes IP/MPLS

Page 56: 2. Apresentação Minicurso "Roteamento por Segmentos

Roteador A

Roteador B

Roteador D

Roteador E

Roteador X

Roteador Y

Roteador C

Túnel Primário

Túnel Backup

59

Restauração em Redes IP/MPLS

Page 57: 2. Apresentação Minicurso "Roteamento por Segmentos

Mesmo meio físico SRLG 10

SRLG 10 R2-R4 R2-R3 SRLG 20 R4-R3 R4-R2 SRLG30 R3-R2 R3-R4

Topologia lógica Malha de túneis

R5

R4

R3

R1

R2

Topologia Física + Lógica Malha de túneis

R5

R4

R3

R1

R2

IP/MPLS IP/MPLS

SLRG 20

SLRG 30

60

Shared Risk Link Group (SRLG)

Page 58: 2. Apresentação Minicurso "Roteamento por Segmentos

• Estruturada em Rede de Transporte e Rede IP/MPLS sem integração dos planos de controle

• Cada Rede tem uma camada específica, de configuração, operação, administração e planejamento independente

• Operadora deseja integração multicamada (MultiLayer) para otimização de recursos da rede, evitando restaurações em múltiplas camadas e um uso eficiente da banda

• Rede de Roteadores de Núcleo IP/MPLS necessita de configuração de SLRGs para evitar túneis disjuntos no mesmo enlace físico

61

Desafios para a Engenharia de Tráfego e Restauração

Page 59: 2. Apresentação Minicurso "Roteamento por Segmentos

• Manutenção de tabelas de roteamento (FIB) e de rótulos (LIB) nos Roteadores de Borda e Intermediários da Rede

menor eficiência no encaminhamento de pacotes

• Protocolo LDP para manutenção dos estados

• Plano de controle independente em cada Roteador de Núcleo com automação limitada por não possuir um controle centralizado

• Engenharia de Tráfego de configuração complexa com inúmeros protocolos, “full-mesh” de túneis

• Hardware proprietário

62

Desafios para a Engenharia de Tráfego e Restauração

Page 60: 2. Apresentação Minicurso "Roteamento por Segmentos

• Ferramenta de Planejamento Cisco MATE

63

Exemplo de Configuração de Túneis MPLS

Page 61: 2. Apresentação Minicurso "Roteamento por Segmentos

• Contexto da Rede de Transporte da Operadora:

– Camada Óptica: formada equipamentos DWDM (Dense Wavelength Multiplex) e ROADM (Reconfigurable Add Drop Multiplex) denotada na indústria de telecomunicações como camada 0

– Camada OTN (Optical Transport Network): formada comutadores OTN atuando na camada física, denotada na indústria de telecomunicações como camada 1

– Plano de controle da Camada Óptica e OTN baseado no ASON (Automatically Switched Optical Network) e GMPLS (Generalized MPLS) atuando de forma independente da Rede de Roteadores de Núcleo IP/MPLS

64

Desafios para a Engenharia de Tráfego e Restauração

Page 62: 2. Apresentação Minicurso "Roteamento por Segmentos

Equipamento L3: roteadores P e PE Backbone IP/MPLS

Equipamento L0: DWDM, ROADMs

Equipamento L1/L2: Switch OTN e Carrier Ethernet

de 100G

de 100G

de 100G

de 100G

N x 10G N x 10G

N x 10G N x 10G

LER LER

LSR

LSR LSR

LSR

L3

L1 / L2

L0

Túnel TE (enlaces lógicos)

Enlaces físicos 10GE Enlaces físicos (comprimento de onda)

65

Desacoplamento entre as Camadas de Rede

Page 63: 2. Apresentação Minicurso "Roteamento por Segmentos

de 100G

de 100G

de 100G

de 100G

N x 10G N x 10G

N x 10G N x 10G

LER LER

LSR

LSR LSR

LSR

L3

L1 / L2

L0

Planos de controle da Rede de Transporte e IP/MPLS sem integração !

Proteções, restaurações em

múltiplas camadas: desperdício de

recursos !

Planejamento, administração,

operação e configuração

complexa: pouca automação !

66

Desacoplamento entre as Camadas de Rede

Page 64: 2. Apresentação Minicurso "Roteamento por Segmentos

67

Como Vencer os Desafios ?

Roteamento por

Segmentos

• Simplificação da configuração de túneis e redução de número de estados nos roteadores de núcleo

Page 65: 2. Apresentação Minicurso "Roteamento por Segmentos

68

Como Vencer os Desafios ?

• Controle Centralizado

multicamada integrado :

Redes Definidas por

Software

Page 66: 2. Apresentação Minicurso "Roteamento por Segmentos

69

Como Vencer os Desafios ?

• Roteamento por Segmentos pode ser implementado sem Redes Definidas por Software e vice versa na Rede da Operadora

• Roteamento por Segmentos simplifica a camada de Rede IP/MPLS com menor quantidade de configurações de túneis, trazendo eficiência no encaminhamento dos pacotes, reduzindo a complexidade operacional

• Redes Definidas por Software permitem integração entre múltiplas camadas (Rede de Transporte e IP/MPLS) da Operadora permitindo mecanismos de restauração e uso racional da capacidade através de um controle centralizado

Page 67: 2. Apresentação Minicurso "Roteamento por Segmentos

• Roteamento por Segmentos se beneficia de Redes Definidas por Software para construção de caminhos diferentes do IGP

• Caminhos podem considerar integração entre diferentes camadas de rede e critérios de operação da Operadora

70

Como Vencer os Desafios ?

Page 68: 2. Apresentação Minicurso "Roteamento por Segmentos

Roteamento por

Segmentos

(SR – Segment Routing)

Redes Definidas por

Software

(SDN - Software

Defined Networks)

Solução para os Desafios da Rede da Operadora

Page 69: 2. Apresentação Minicurso "Roteamento por Segmentos

Roteiro

• Introdução

• Limitações das Tecnologias das Redes de Núcleo

• Conceitos de Redes Definidas por Software

• Roteamento por Segmentos

• Experimentação Prática

• Considerações Finais e Direções Futuras

72

Page 70: 2. Apresentação Minicurso "Roteamento por Segmentos

Conceitos de Redes Definidas por Software

73

Page 71: 2. Apresentação Minicurso "Roteamento por Segmentos

74

• Desacoplamento do plano de controle e de encaminhamento de dados

• Configuração da rede através de regras nos fluxos de dados, restrito ao tamanho da tabela de fluxos através de APIs aberta aos dispositivos de encaminhamento de dados (ex.: Switch OpenFlow)

• Lógica de controle em uma entidade externa: controlador SDN ou sistema operacional de rede (Network Operating System – NOS)

• Programação da rede realizada por aplicações de rede que interagem com o controlador através de APIs abertas

Arquitetura de Redes Definidas por Software

Page 72: 2. Apresentação Minicurso "Roteamento por Segmentos

75

Aplicações de Rede

Plataforma de Controle

API aberta Northbound

API aberta Southbound

Infraestrutura de rede física

1. Plano de controle e plano de

encaminhamento de dados

separados

2. Controle centralizado da rede

3. Introduz a capacidade de

programação da rede através de APIs

abertas

Arquitetura de Redes Definidas por Software

Adaptado de “Diego Krautz et al, Software-Defined Networking: A Comprehensive Survey”

Page 73: 2. Apresentação Minicurso "Roteamento por Segmentos

76

Controlador SDN

Aprendizado

de MAC

Algoritmos

de

Roteamento

Sistema de

Detecção

de intrusos

(IDS)

Balanceadores

de carga

Aplicações de Rede

Tabela de Fluxos

Re

de

Tra

dic

ion

al

Re

de

De

fin

ida

po

r S

oft

wa

re

Rede IP Tradicional x Rede Definida por Software

Adaptado de “Diego Krautz et al, Software-Defined Networking: A Comprehensive Survey”

Page 74: 2. Apresentação Minicurso "Roteamento por Segmentos

Difícil introdução de inovação

tecnológica (ex. : IPv4 para IPv6)

Redes complexas e rígidas,

difíceis de gerenciar e configurar

Integração vertical:

Plano de controle e de dados

Implementados no dispositivo de rede 77

Controlador SDN

Aprendizado

de MAC

Algoritmos

de

Roteamento

Sistema de

Detecção

de intrusos

(IDS)

Balanceadores

de carga

Aplicações de Rede

Tabela de Fluxos

Re

de

Tra

dic

ion

al

Re

de

De

fin

ida

po

r S

oft

wa

re

Rede IP Tradicional x Rede Definida por Software

Capacidade de programação e

flexibilidade da rede abertas

Centralização do controle da rede

Separação do plano de controle

do plano de encaminhamento

de dados

Adaptado de “Diego Krautz et al, Software-Defined Networking: A Comprehensive Survey”

Page 75: 2. Apresentação Minicurso "Roteamento por Segmentos

78

Sistema Operacional de Rede (NOS)

Rote

am

ento

“Hypervisor “

Interface Northbound (NBI)

Interface Southbound (SBI)

Linguagens baseadas em virtualização

Linguagens de programação

Aplicações de rede

Infraestrutura de rede

Depura

ção, te

ste e

simula

ção

Lis

ta d

e

contr

ole

de

Ace

sso (

ACL)

Bala

nce

ado-

res

de trá

fego

Sistema Operacional de Rede (NOS) e “Hypervisor”

Aplicação

...

Plano de Dados

Plano de Controle

Plano de Gerência

Planos Camadas Arquitetura

Aplicação

• Decomposta em planos e camadas:

Adaptado de “Diego Krautz et al, Software-Defined Networking: A Comprehensive Survey”

Visão da Arquitetura SDN Completa

Page 76: 2. Apresentação Minicurso "Roteamento por Segmentos

79

• Similar às redes IP tradicionais, com dispositivos que fazem apenas o encaminhamento de dados

• Switches baseados em hardware x86 habilitado com protocolo OpenFlow: OpenFlow Capable Switches (OFCS)

Plano de Dados: Infraestrutura de Redes

Page 77: 2. Apresentação Minicurso "Roteamento por Segmentos

80

• Separação entre o plano de controle e o plano de encaminhamento de dados

• Interface padronizada de programação

• Interfaces abertas: OpenFlow, NETCONF, BGP-LS (Border Gateway Protocol - Link State), PCEP (Path Computation Element Communication Protocol), OVSDB (Open vSwitch Database), SNMP (Simple Network Management Protocol) e CLI (Command Line Interface)

Plano de Dados: Interfaces Southbound (SBI)

Page 78: 2. Apresentação Minicurso "Roteamento por Segmentos

81

• Protocolo NETCONF

– Protocolo de configuração e monitoramento de rede

– Evolução do SNMP, fruto do trabalho do IETF de reunir requisitos de gerenciamento das Operadoras de Telecomunicações

– Implementa cliente-servidor

– Utiliza o protocolo RPC (Remote Procedure Call )

– Dados codificados em XML

– Protocolo de transporte: TCP

– Protocolo de aplicação: HTTP ou HTTPS

Interfaces Southbound: NETCONF e YANG

Page 79: 2. Apresentação Minicurso "Roteamento por Segmentos

82

Servidor

Aplicações

Cliente

Instrumentação

Servidor

Instrumentação

Cliente CLI

Aplicações

Aplicações

Gerente NETCONF

Dispositivo NETCONF Dispositivo NETCONF

CLI através de NETCONF

Repositório de Dados

• Modelo Cliente-Servidor NETCONF

Configurações necessárias para sair do estado inicial

para o operacional

Aplicação da configuração: Corrente (Running)

Inicial (Startup) Candidatas (Candidate)

Arquivo XML

Protocolo NETCONF

Page 80: 2. Apresentação Minicurso "Roteamento por Segmentos

83

• Camadas do protocolo NETCONF

Conteúdo

Operações

RPC

Protocolo de Transporte

Configuração de Dados

<get-config>, <edit-config>, <notification>

<rpc>, <rpc-reply>

BEEP, SSH, SSL, console

Camada Exemplo

Protocolo NETCONF

Page 81: 2. Apresentação Minicurso "Roteamento por Segmentos

84

• Mensagem de “Hello” para anúncio das capacidades do protocolo e modelos de dados suportados em XML:

<hello xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> <capabilities> <capability> urn:ietf:params:xml:ns:netconf:base:1.1 </capability> <capability> urn:ietf:params:xml:ns:netconf:capability:startup:1.0 </capability> <capability> urn:ietf:params:xml:ns:yang:ietf-interfaces? module=ietf-interfaces&amp;revision=2012-04-29 </capability> </capabilities> <session-id>4<session-id> </hello>

Protocolo NETCONF

Page 82: 2. Apresentação Minicurso "Roteamento por Segmentos

85

• Modelo de dados YANG

– Linguagem formal de modelo de dados

– Construção de aplicações de fácil aprendizado

– Modelo de dados baseados em estruturas reutilizáveis com regras bem definidas:

• Módulos

• Submódulos

• Versão

• Modelo de dados estruturado em árvore para cada estrutura com propriedades que correspondem às funcionalidades do dispositivo

– Traduzido em um arquivo XML ou JSON

Modelo YANG

Page 83: 2. Apresentação Minicurso "Roteamento por Segmentos

86

Módulos YANG

Gerência de

Aplicações

Módulos YANG Módulos

YANG

Módulos YANG

Módulos YANG

Módulos YANG

Netconf

Modelo YANG

Page 84: 2. Apresentação Minicurso "Roteamento por Segmentos

87

• Exemplo de Módulo YANG para inventário de redes

Modelo YANG

Page 85: 2. Apresentação Minicurso "Roteamento por Segmentos

88

Modelo YANG - Exemplo

• Exemplo de Esquema do Modelo YANG para o roteador CRS1000v da Cisco

A modelagem YANG permite intercambiar parâmetros dos

dispositivos de diferentes fabricantes

Page 86: 2. Apresentação Minicurso "Roteamento por Segmentos

89

Modelo YANG - Exemplo

Page 87: 2. Apresentação Minicurso "Roteamento por Segmentos

90

• Formas básicas de obtenção da topologia da rede

– Protocolo de gerenciamento

– Protocolo de roteamento (IGP)

• Protocolo BGP-LS (Border Gateway Protocol - Link State)

– Responsável por obtenção da topologia da rede

– Agrega múltiplas áreas/níveis e diferentes ASes

– Controlador SDN pode usar BGP-LS para adquirir a topologia da rede para um PCE (Path Computation Element ) para cálculo de caminho com Engenharia de Tráfego

Interfaces Southbound: BGP-LS

Page 88: 2. Apresentação Minicurso "Roteamento por Segmentos

91

Controlador SDN

Domínio 1 (OSPF)

Domínio 2 (IS-IS)

Domínio n (Multiárea

IS-IS)

Controlador SDN

Domínio 1 (OSPF)

Domínio 2 (IS-IS)

Domínio n (Multiárea

IS-IS)

BGP-LS BGP-LS BGP-LS

BGP-LS RR

IGP

IGP IGP

BGP-LS Southbound

Interface Southbound Interface

Protocolo BGP-LS

Page 89: 2. Apresentação Minicurso "Roteamento por Segmentos

92

• Usado para comunicações entre o PCC (Path Computation Client) e o PCS (Path Computation Server)

• Utiliza informações dos estados dos enlaces LSDB (Link-State Database)

• Tipos de PCE usados no SDN

– PCE dinâmico (Stateful PCE)

– PCE iniciado pelo LSP

• Extensões do PCEP ainda em desenvolvimento pelo IETF

PCEP

TED

PCC

PCS

Arquitetura PCE

Protocolo PCEP (Path Computation Element Protocol)

PCE

Page 90: 2. Apresentação Minicurso "Roteamento por Segmentos

Switch OpenFlow

Canal Seguro

Tabela de Fluxos

Sw

Hw

Controlador

Protocolo OpenFlow

SSL

93

• Protocolo OpenFlow

– Protocolo de padrão aberto

– Usa tabelas com regras para tratamento de pacotes

– As regras são baseadas em porta física, endereço MAC, tipo de quadro, endereço IP, tipo de protocolo, tipo de serviço e porta TCP/UDP (Origem/Destino)

– Dispositivos OpenFlow e Controlador SDN são ligados através de um canal de comunicação seguro TLS (Transport Layer Security)

Interfaces Southbound: OpenFlow

Page 91: 2. Apresentação Minicurso "Roteamento por Segmentos

94

Aplicação Aplicação

Co

ntr

ole

de

C

om

un

ica

çõ

es

Co

ntr

ole

de

C

om

un

ica

çõ

es

Sistema Operacional

de Rede (NOS) Tabela de

Fluxos

Controlador SDN

Dispositivo SDN

• Cada regra possui ações: encaminhamento, descarte e modificação em um fluxo de dados

Tabela de Fluxos OpenFlow

Page 92: 2. Apresentação Minicurso "Roteamento por Segmentos

95

OF 1.0 Dez/2009

OF 1.1 Fev/2011

OF 1.2 Dez/2011

OF 1.3 Abr/2012

OF 1.4 Ago/2013

-Tabela de Fluxos única - IPv4

- Múltiplos controladores - IPv6 - regras com TLV flexível

- Múltiplas tabelas de fluxo - Grupo de tabelas - MPLS e ECMP

- Múltiplos canais entre switches e controladores - QoS - Tabela de fluxos com entrada perdidas

- Informação de vagas na tabelas de fluxos - Portas Ópticas - Opção de despejo

Versões do Protocolo OpenFlow

Page 93: 2. Apresentação Minicurso "Roteamento por Segmentos

96

• Virtualização no contexto do SDN

– As aplicações de rede e o controlador SDN podem ou não ser instalados em uma máquina com infraestrutura virtualizada (Virtual Machine – VM)

• Virtualização no contexto do NFV (Network Functions Virtualization)

– Especificado pelo ETSI no grupo ISG (Industry Specifications Group )

– Funções da rede movidas para a nuvem (Cloud Computing)

– Uso de servidores comerciais COTS (Commercial Off-the-Shelf) baseados em x86

Plano de Controle: Arquitetura de Virtualização

Page 94: 2. Apresentação Minicurso "Roteamento por Segmentos

99

Servidor B

Servidor

VN

1

VN

F2

VN

F3

Hipervisor

VM 1 VM 2

...

...

Servidor A

Servidor

VN

F1

VN

F2

VN

F3

Hipervisor

VM 1 VM 2

...

...

Ex.: VMWARE, KVM

Ex.: roteador de borda do núcleo (PE) Rede sem fio

Rede WAN

Rede de Acesso

Rede Óptica

Ex. rede IP/MPLS

Aplicações Ex. Segment Routing Northbound Interface Ex.: RESTful

Controlador

Southbound Interface Ex.: NETCONF

Ex. : ONOS

Armazenamento (Storage)

Rede do Telco Datacenter

Armazenamento Virtual

Telco Datacenter

Ex.: vswitch

Controlador

Ex.: Opendaylight

Southbound Interface Ex.: OpenFlow

Orquestração Ex.: Cisco WAE (WAN Automation Engine)

Arquitetura de Virtualização: Hypervisor e Orquestrador

Page 95: 2. Apresentação Minicurso "Roteamento por Segmentos

100

• SDN x NFV

– Indústria reconhece que são conceitos complementares

– Serviços NFV podem ser configurados com ou sem SDN

– SDN pode ser implementado com ou sem infraestrutura de virtualização

• Protocolos de tunelamento para sobreposição de soluções de virtualização : SDN “overlay”

– VxLAN (Virtual eXtensible Local Area Network)

– NVGRE (Network Virtualization using GRE)

– STT (Stateless Transport Tunneling)

Arquitetura de Virtualização: SDN x NFV

Page 96: 2. Apresentação Minicurso "Roteamento por Segmentos

110

• O que é o PCE ?

– Calcula caminhos baseados em restrições a partir do comportamento dos roteadores, do OSS (Operations Support System) ou de outro PCE

– Requisições são feitas ao PCE através do protocolo PCEP

– Tem visão de todos os domínios da rede

– Constrói uma base de dados de topologia multidomínio denominada TED (Traffic Engineering Database) a partir dos LSAs do IGP (OSPF ou IS-IS) ou pelo BGP-LS

– Sessão estabelecida entre o PCC (Path Computation Client) e o PCE (Path Computation Element), é sobre TCP

Elemento de Computação de Caminho (PCE)

Page 97: 2. Apresentação Minicurso "Roteamento por Segmentos

111

TED

PCE

PCC

Roteador Head End

WAN

Sinalização/ Roteamento

Encaminhamento

PCEP

Requisição do Serviço

Link-State Data PCS

Operação do PCE

Page 98: 2. Apresentação Minicurso "Roteamento por Segmentos

112

• PCE de controle estático (Stateless PCE)

– Não possui conhecimento prévio dos caminhos pré-estabelecidos

– Pouca otimização de recursos de rede

– Uso entre domínios MPLS, não aplicável ao SDN

• PCE de controle dinâmico (Stateful PCE)

– Tem um controle do cálculo do caminho ótimo

– Possui conhecimento da rede (estado do LSP, recursos, políticas)

– Sincronizado com a base de LSDB (Link State Database)

Tipos de PCE

Page 99: 2. Apresentação Minicurso "Roteamento por Segmentos

113

PCEP

Stateless PCE

TED

Stateless PCC

Stateful PCE

TED PCEP

Stateful PCC

LSP DB

Tipos de PCE

Page 100: 2. Apresentação Minicurso "Roteamento por Segmentos

114

• Stateful PCE passivo

– PCC inicia a configuração do caminho

– PCS aprende o estado do LSP para otimização do caminho

• Stateful PCE ativo

– Tanto o PCC quanto o PCS podem iniciar a configuração do caminho

– LSP pode ser iniciado pelo PCS, sendo mais integrado às demandas das aplicações

– O PCE pode fazer parte do controlador SDN

PCE

Stateful

Stateless

Passivo

Ativo

Caminho iniciado Pelo PCC

Caminho iniciado Pelo PCS

Stateful PCE

Opções indicadas para SDN

Page 101: 2. Apresentação Minicurso "Roteamento por Segmentos

115

• PCE com SDN

– Solução ideal para Operadora de telecomunicações

– Construção de base de dados entre domínios

– 4 métodos para construção da base de dados multidomínio:

• Cálculo de caminho por domínio

• Cooperação entre PCEs

• Cálculo de caminho de forma recursiva

• PCE hieráquico

– Controle centralizado dos caminhos na rede IP/MPLS

– Usado em redes multicamadas: IP/MPLS + Óptica

– Permite a adoção em tempo real das políticas de OSS (Operations Support System)

Proposta de PCE com SDN

Page 102: 2. Apresentação Minicurso "Roteamento por Segmentos

116

A C

B D

X

Y

PCE PCE 1. Pretendo

chegar até Y, qual o melhor

caminho ?

2. Acho que saindo por “A” é o melhor caminho...

3. Como chegar até Y ?

4. Acho que por “D” é o melhor

caminho

5. A rota é através de B

6. Rota de X até B

7. Desejo chegar a Y !

8. Rota de D até Y

Ingresso do tráfego

Egresso do tráfego

Cooperação entre PCEs

Page 103: 2. Apresentação Minicurso "Roteamento por Segmentos

PCE Antes do SDN

• O “olho que tudo vê”: um mito !

117

MPLS 2008 – 11th Annual Conference

Page 104: 2. Apresentação Minicurso "Roteamento por Segmentos

PCE Depois do SDN

• PACE: Path Computation Element Architecture

118

SDN MPLS 2014 – Advanced PCE

Page 105: 2. Apresentação Minicurso "Roteamento por Segmentos

Plano de Controle: Interface Northbound

• APIs Northbound

– Ainda são objeto de esforço de padronização e pesquisa

– Controladores tem suas próprias APIs Nothbound (ex.: Opendaylight e ONOS)

– API REST

• Utiliza HTTP ou HTTPS

• Simplicidade: utiliza mecanismos baseado em Web

• Flexível: não necessita de MIBs (Management Information Base), componentes de configuração em URL

• Extensível: novos recursos não necessitam de recompilação

• Seguro: uso do protocolo HTTPS

119

Page 106: 2. Apresentação Minicurso "Roteamento por Segmentos

GET PORT STATS Método URI (Uniform Resource Identifier) : /stats/port/<dpid> , onde dpid é Datapath ID $ curl -X GET http://localhost:8080/stats/port/1 Resposta: { "1": [ { ´´port_no’’: 1, ´´rx_packets’’: 9, "tx_packets": 6, "rx_bytes": 738, "tx_bytes": 252, "rx_dropped": 0, "tx_dropped": 0, "rx_errors": 0, "tx_errors": 0, "rx_frame_err": 0, "rx_over_err": 0, "rx_crc_err": 0, "collisions": 0, "duration_sec": 12, "duration_nsec": 9.76e+08 }, { : : } ] }

120

Exemplo de uso API REST para o controlador Ryu para informar o estado das portas de um comutador:

Interface Northbound: REST

Page 107: 2. Apresentação Minicurso "Roteamento por Segmentos

121

• APIs RESTful

– Baseada na arquitetura REST

– Serviço definido em uma URI (Uniform Resource Identifier)

– Utiliza métodos HTTP

– Representação do recurso no formato de arquivo JSON

Método

HTTP

URI Operação Tipo de

Operação

1 GET /UserService/users Obtém a lista de usuários Leitura

2 GET /UserService/users/1 Obtém o usuário com Id 1 Leitura

3 PUT /UserService/users/2 Insere o usuário com Id 2 completa

4 POST /UserService/users/2 Update User with Id 2 N/A

5 DELETE /UserService/users/1 Apaga o usuário com Id 1 completa

6 OPTIONS /UserService/users Lista as operações suportadas no serviço web Leitura

Interface Northbound: REST

Page 108: 2. Apresentação Minicurso "Roteamento por Segmentos

122

• APIs RESTCONF

– Baseada na arquitetura REST

– Dados definidos em modelos YANG

– Repositório de dados em NETCONF

– Utiliza porta 8080 para as requisições HTTP

– Utiliza métodos HTTP

– Representação do recurso no formato de arquivo JSON ou XML

• APIs NETCONF

– Usa XML para passagem de dados e comandos

Interface Northbound: RESTCONF e NETCONF

Page 109: 2. Apresentação Minicurso "Roteamento por Segmentos

123

• Aplicações de rede

– Engenharia de Tráfego (TE)

• Minimizar consumo de energia

• Maximizar a capacidade para agregação do tráfego

• Balancear e otimizar o tráfego

– Mobilidade e Redes sem fio

• Gerenciar o espectro e a alocação de recursos de rádio

• Requer mecanismos de handover

• Prover balanceamento eficiente de tráfego entre células

– Medição e Monitoramento

– Segurança

• Firewall, DPI (Deep Packet Inspection), detecção de anomalias do tráfego

Plano de Gerenciamento: Aplicações

Page 110: 2. Apresentação Minicurso "Roteamento por Segmentos

124

• APIs para desenvolvedores de aplicação

– REST

– RESTCONF

– RESTful

• Linguagens de programação

– C

– C++

– Java

– Python

Plano de Gerenciamento: Linguagens de Programação

Page 111: 2. Apresentação Minicurso "Roteamento por Segmentos

Roteiro

• Introdução

• Limitações das Tecnologias das Redes de Núcleo

• Conceitos de Redes Definidas por Software

• Roteamento por Segmentos

• Experimentação Prática

• Considerações Finais e Direções Futuras

127

Page 112: 2. Apresentação Minicurso "Roteamento por Segmentos

Roteamento pela Origem (Source Routing)

• Permite que a origem envie os pacotes por uma rota parcialmente ou completamente especificada a partir da origem

• Os roteadores da rede determinam o caminho baseado no destino do pacote

• O Roteamento pela origem habilita o nó de origem na descoberta de todas as possíveis rotas para um determinado destino

128

R1

R2

R6

R5

R4

R3

Host A

Host C

Host B

Host A-R1-R3-R2-R4-R5-Host B

Estados mantidos apenas

em R1 e R5 !

Page 113: 2. Apresentação Minicurso "Roteamento por Segmentos

• Pode ser implementado no protocolo IP através de duas extensões: Strict Source (SS) e Loose Source (LS)

• Não foi utilizado na Internet por problema de segurança, pois se a origem provém de um ataque, os demais nós respondem a este ataque

• Roteamento baseado em regras podem ser usados para rotear pacotes pela origem

• As regras podem ser dirigidas por um controlador centralizado, como por exemplo um controlador SDN

129

Roteamento pela Origem (Source Routing)

Page 114: 2. Apresentação Minicurso "Roteamento por Segmentos

Roteamento pela Origem (Source Routing)

• Exemplo de Loose Source Routing no IPv6

130

Page 115: 2. Apresentação Minicurso "Roteamento por Segmentos

Benefícios do Roteamento pela Origem

131

• O Roteamento pela origem reduz o número de estados dos roteadores intermediários da rede

– Diminui o tempo de convergência e a eficiência no encaminhamento dos pacotes

• Facilita a introdução do controle de Redes Definidas por Software (Software Defined Networks – SDN) em Redes TCP/IP, para cálculo do caminho, definido nas políticas, a partir do nó origem

Page 116: 2. Apresentação Minicurso "Roteamento por Segmentos

• Protocolo de roteamento pela origem

– A origem do fluxo de dados escolhe e codifica uma lista de segmentos

– O segmento é um identificador genérico para designar uma instrução

– Tipos de instrução: serviço, contexto, localizador ou caminho baseado em um IGP (Interior Gateway Protocol)

– O segmento pode ser um índice local ou global

– Na Rede de Roteadores IP/MPLS uma lista de segmentos é uma pilha de rótulos, no IPv6 é um ou mais endereços especificados na extensão do cabeçalho para roteamento

132

Roteamento por Segmentos: Conceitos Preliminares

Page 117: 2. Apresentação Minicurso "Roteamento por Segmentos

• Segmentos de Nó:

– SRGB (Segment Routing Global Block) no MPLS é formada por uma faixa de rótulos reservada (16000 a 23999) somada a um índice (prefixo), tem significado global e é único por nó.

• Segmentos de Adjacência:

– Fora da faixa do SRGB, tem significado local, e pode ser instalado em outro nó

133

Tipos de Segmentos

Page 118: 2. Apresentação Minicurso "Roteamento por Segmentos

• Segmento Local:

– Fora da faixa do SRGB, tem significado local e não pode ser instalado em outro nó

• Rótulos especiais: 90000 a 99999 usados pelas extensões do LDP, RSVP e BGP

134

Tipos de Segmentos

Page 119: 2. Apresentação Minicurso "Roteamento por Segmentos

1 2

3 4

5 16005 16005

16005 16005

Segmento de Nó

1 2

3 4

5

16004

16004 16004

16004

16004

16005

Interpretação: O caminho do nó 1 (origem) ao 5 usa o segmento 16005 * O caminho do nó 3 (origem) ao 5 usa o segmento 16005 * Segmento de Nó SID: 16000 (SRGB) + 5 (prefixo do nó) * Caminho mais curto do nó de origem ao nó de destino calculado pelo IGP

2 caminhos de mesmo custo (Equal Cost Multipath Routing - ECMP)

A decisão da escolha do caminho pode depender de restrições

(ex.: latência e banda)

135

Segmento de Nó

Page 120: 2. Apresentação Minicurso "Roteamento por Segmentos

Segmento de Adjacência

1 2

3 4

5 24024

24021 24025

Interpretação: As adjacências do nó 2 aos nós 1, 5 e 4 utilizam os segmentos 24021, 24024, 24025. Formação do segmento: por exemplo o rótulo 240xy, onde x é o nó de origem e y o de destino, configurado manualmente

136

Segmento de Adjacência

Page 121: 2. Apresentação Minicurso "Roteamento por Segmentos

Segmento Local

1 2

3 4

5

9001

Serviço 1

9002

Serviço 2

Interpretação: O serviço 1 do nó 2 utiliza o rótulo 9001 e não pode ser usado em outro nó. O serviço 2 do nó 4 utiliza o rótulo 9002 e não pode ser usado em outro nó.

137

Segmento Local

Page 122: 2. Apresentação Minicurso "Roteamento por Segmentos

• Os Segmentos de Nó e Adjacência pode ser combinados para direcionar o tráfego em qualquer caminho da rede:

1 2

3 4

5

24045

16004

24045

Pacote dest: 5

24045

Pacote dest: 5

Pacote dest: 5

Pacote dest: 5

Pacote para o nó 5

16004

24045

Pacote dest: 5

16004

138

Combinação de Segmentos de Nó e Adjacência

Page 123: 2. Apresentação Minicurso "Roteamento por Segmentos

• A cadeia de SIDs é chamada de caminho de Roteamento por Segmentos (SRouting Path – SR Path)

– O cálculo do caminho é feito pelo IGP (por exemplo IS-IS ou OSPF) ou ainda pelo controlador SDN

– A lista de segmentos é armazenada na SR-FIB (Segment Routing-Forwarding Information Base)

– A quantidade de entradas na tabela SR-FIB de um nó qualquer é N(S) + A, onde N(S) é o número de Segmentos de Nó e A o número de Segmentos de Adjacência, contra N2 túneis na FIB dos Roteadores implementados com MPLS tradicional

– N é o número de Roteadores de Núcleo

139

SR-Path: Segment Routing Path

Page 124: 2. Apresentação Minicurso "Roteamento por Segmentos

• Exemplo de cálculo de complexidade no Roteamento por Segmentos x Rede IP/MPLS tradicional

1 2

3 4

N = 2, M= 6 enlaces N(S)t = N(S)nó + A = 2 Complexidade O(N(S)t)

Interpretação: O nó de origem 1 sabe como chegar ao nó de destino 4 com o segmento de adjacência com SID = 24014 Estados mantidos apenas nos nós de origem e destino

1 2

3 4

Interpretação: O nó de origem 1 para chegar ao nó de destino 4 com os túneis 1-4, 1-2-4, 1-3-4, 1-3-24 Estados mantidos em todos os nós

N = 2, M= 6 enlaces N(T) = N2 = 4 Complexidade O(N2)

140

Quantidade de Entradas SR-FIB x LFIB

Page 125: 2. Apresentação Minicurso "Roteamento por Segmentos

• PUSH: inserção de um segmento na lista. No MPLS insere um rótulo na pilha, equivale a operação de “Push” no MPLS

• NEXT: ativa o próximo segmento da lista. No MPLS remove o rótulo mais externo, equivale a operação de “Pop” do MPLS

• CONTINUE: continuação do segmento ativo. No MPLS corresponde à operação de “swap”, mas no caso do Roteamento por Segmentos, o rótulo é mantido

141

Operações com Segmentos

Page 126: 2. Apresentação Minicurso "Roteamento por Segmentos

1 2 4 5

16004

24045

Pacote dest: 5

16004

24045

Pacote dest: 5

Pacote dest: 5

Pacote dest: 5

24045

Pacote dest: 5

Push 24045

Push 16004

FEC dest 5

Continue 16004

Pop 16004

Pop 24045

Segmento ativo

Nomenclatura Operações MPLS

PUSH CONTINUE NEXT

16004 Segmento de Nó

24005 Segmento de Adjacência

142

Operações com Segmentos

NEXT

Page 127: 2. Apresentação Minicurso "Roteamento por Segmentos

• Permite agrupar múltiplos enlaces físicos permitindo o balanceamento do tráfego

4 5

Pacote dest: 5

24045 Pop

24045

24145 Pop

24145

24245

24245

Pop 24245

Pop 24245

2 enlaces físicos

143

Agrupamento (Bundle) de Segmentos de Adjacência

Page 128: 2. Apresentação Minicurso "Roteamento por Segmentos

• Comparativo da Arquitetura de Roteamento por Segmentos

com a Arquitetura IP/MPLS

144

Roteamento por Segmentos x Redes IP/MPLS Legadas

Rede MPLS baseada em SR Rede MPLS tradicional

Transporte MPLS básico IGP IGP + LDP

Sincronismo entre o LDP/IGP Não se aplica Difícil de gerenciar

Comutação FRR (Fast Reroute)

em 50 ms

IGP IGP + RSVP-TE

Túneis TE adicionais para

suportar FRR

Não precisa Precisa

Otimização de caminho Backup Sim Não

ECMP para criação de túneis TE Sim Não

Estados apenas no Headend do

TE

Sim Não, depende do número de nós

(complexidade n2 nos pontos

intermediários)

Interoperabilidade com a rede

MPLS tradicional

Sim Não se aplica

Projetado para SDN Sim Não

Page 129: 2. Apresentação Minicurso "Roteamento por Segmentos

• O Segmento é representado por um rótulo (Label)

• A lista de Segmentos é representada pelo empilhamento de rótulo (Label Stack)

• cadeia de SIDs é chamada de caminho de Roteamento por Segmentos (Segment Routing Path – SR Path)

• Possui a funcionalidade PHP (Penultimate Hop Popping) e rótulos Explicit–Null

145

Roteamento por Segmentos com Plano de Dados MPLS

Page 130: 2. Apresentação Minicurso "Roteamento por Segmentos

146

Roteamento por Segmentos com Plano de Dados MPLS

• Prefixo SID associado à interface de Loopback de cada Roteador de Núcleo caso o protocolo LDP não esteja habilitado

• A divulgação dos segmentos a partir das extensões dos protocolos IGP, BGP, BGP-LS e PCEP e alternativamente pelo LDP

Page 131: 2. Apresentação Minicurso "Roteamento por Segmentos

IP dest

Lbl IN

Lbl Out Next Hop

X - 16004 99.1.2.2

FIB Lbl IN Lbl Out

Next Hop

16004 16004 99.2.3.2

LIB

Lbl IN Lbl Out

Next Hop

16004 - 99.3.4.4

LIB

Segmento 16004

16004

Pacote dest: 4

16004

Pacote dest: 4

Pacote dest: 4 Pacote

dest: 4

Lo: 1.1.1.4/32 Prefixo-SID: 16004

Push Swap Pop

Lo: 1.1.1.3/32 Lo: 1.1.1.2/32 Lo: 1.1.1.1/32

99.1.2.1 99.2.3.2

99.2.3.3 99.1.2.2

99.3.4.3

1 2 3 4

99.3.4.4 Rede IP “x”

LER LER LSR LSR

PHP

Explicit Null

Anuncia via IGP SID associado ao IP de

Loopback

147

Roteamento por Segmentos com Plano de Dados MPLS

Expl. Null

Page 132: 2. Apresentação Minicurso "Roteamento por Segmentos

Lo: 1.1.1.2/32

99.1.3.1

MP-BGP

LSR LSR

LSR LSR

LER LER CE CE 7 1

5

3 4

2 8

6 Prefixo SID 16002

10.0.0.0/30

VRF vermelha

VRF vermelha

99.1.3.3 99.3.4.3 99.3.4.4 99.2.4.4

99.2.4.2

99.2.6.2

99.2.6.6

99.5.6.6 99.5.6.5 99.1.5.1

99.1.5.5

Gi 0

Gi 0 Gi 1 Gi 1 Gi 0

Gi 0

Gi 1

Gi 0 Gi 1 Gi 1 Gi 0

Gi 1

Gi 2 Gi 2

148

Serviço VPN L3 com Roteamento por Segmentos

Page 133: 2. Apresentação Minicurso "Roteamento por Segmentos

• Exemplo de encaminhamento do Plano de Dados MPLS

para VPN L3

Resultado da linha de comando show mpls forwarding no roteador 3 seria:

RP/0/0/CPU0:roteador-3#show mpls forwarding

Local Outgoing Prefix Outgoing Next Hop

Label Label or ID Interface

-------- ----------- -------------------- ------------- ---------------

16001 Pop SR Pfx (idx 1) Gi0/0/0/0 99.1.3.1

16002 16002 SR Pfx (idx 2) Gi0/0/0/1 99.3.4.4

16004 Pop SR Pfx (idx 4) Gi0/0/0/1 99.3.4.4

16005 16005 SR Pfx (idx 5) Gi0/0/0/0 99.1.3.1

16006 16006 SR Pfx (idx 6) Gi0/0/0/0 99.1.3.1

16006 16006 SR Pfx (idx 6) Gi0/0/0/1 99.3.4.4

24031 Pop SR Adj (idx 1) Gi0/0/0/0 99.1.3.1

24034 Pop SR Adj (idx 4) Gi0/0/0/1 99.3.4.4

Segmentos de Adjacência Nó 3-Nó 1 e Nó 3-Nó 4

Segmentos de Nó Origem: Nó 3 Destino: Nó 6 Temos 2 caminhos de menor custo

Segmentos de Nó Origem: Nó 3 Destino: Nó 1,2,4,5 Temos apenas 1 caminhos de menor custo

149

Serviço VPN L3 com Roteamento por Segmentos

Page 134: 2. Apresentação Minicurso "Roteamento por Segmentos

• O Segmento é representado por um endereço IPv6 codificado em uma extensão de cabeçalho denominada SRH (Source Routing Header)

• A lista de Segmentos é construída através de um IGP (OSPF, IS-IS) ou ainda através do BGP

• A divulgação dos segmentos é feita a partir das extensões dos protocolos IGP, BGP, BGP-LS e PCEP

• O Roteamento por Segmentos em IPv6 é do tipo Loose onde o roteador de origem sugere um ou mais saltos para a composição da rota

150

Roteamento por Segmentos com Plano de Dados IPv6

Page 135: 2. Apresentação Minicurso "Roteamento por Segmentos

• Cabeçalho SRH (Source Routing Header) do IPv6

– Segments Left: índice da lista de segmentos. Indica o segmento que está sendo inspecionado

– First Segment: aponta para o último Segmento da lista

– Segment List[n]: endereço IPv6 que representa o Segmento

151

Roteamento por Segmentos com Plano de Dados IPv6

Page 136: 2. Apresentação Minicurso "Roteamento por Segmentos

• Roteamento por Segmentos no IPv6

– O Segmento ativo é aquele que está designado como endereço MAC de destino no pacote, sendo atualizado em cada ponto final do segmento

– Tipos de Nós:

• Nó de Roteamento por Segmentos habilitado (SR Capable): capaz de criar a lista de segmentos ou recebê-los de um controlador SDN

• Nós de Trânsito: com e sem Roteamento por Segmentos presente (Intra Segment Nodes)

• Nós finais (Endpoint Nodes), onde são inspecionados os segmentos

152

Roteamento por Segmentos com Plano de Dados IPv6

Page 137: 2. Apresentação Minicurso "Roteamento por Segmentos

C D

F G

H

B

E

A Rede “x”

Rede “y”

IPv6 Hdr : SA=x, DA = y

Payload

IPv6 Hdr : SA=x, DA = C

Payload

SR Hdr : SL= C, F, H, y

IPv6 Hdr : SA=x, DA = C

Payload

SR Hdr : SL= C, F, H, y

IPv6 Hdr : SA=x, DA = F

Payload

SR Hdr : SL= C, F, H, y

IPv6 Hdr : SA=x, DA = H

Payload

SR Hdr : SL= C, F, H, y

IPv6 – IPv6 Header SR Hdr: Segment Routing Header SL: Segment List

Nó de Roteamento por Segmentos Habilitado (SR Capable): A Nós de Trânsito (Intra Segment Nodes): B, E e G Nós finais (Endpoint Nodes): C, F e H

153

Exemplo de Roteamento por Segmentos no IPv6

Page 138: 2. Apresentação Minicurso "Roteamento por Segmentos

• Segment Routing Global Block (SRGB)

– É uma faixa de rótulos reservada para Segmentos de Nó ou globais

– Tem valor absoluto em um domínio de Roteamento por Segmentos (SR domain)

– O rótulo é formado um prefixo SID somado à base do SRGB

• Exemplo um nó com SID 65 o prefixo SID será 16000 + 65 = 16065

– Base SRGB padrão: rótulos alocados entre 16000 a 23999

– Base SRGB não padrão: rótulos alocados entre 16000 a 1048575

154

Bloco Global de Roteamento por Segmentos (SRGB)

Page 139: 2. Apresentação Minicurso "Roteamento por Segmentos

4 3 2 1 16001

Pacote dest: 1

533336

Pacote dest: 1

16001

Pacote dest: 1

16001

Pacote dest: 1

24000 ... 1.048.575

16000 Index 0 16001 Index 1 ... 23999 Index 7999

SR

GB

541335 ... 1.048.575

16000 Index 0 16001 Index 1 ... 533334

SR

GB

24000 ... 1.048.575

16000 Index 0 16001 Index 1 ... 23999 Index 7999

SR

GB

533335 Index 0 533336 Index 1 ... 541334 Index 7999

Loopback 1.1.1.1/32 Prefixo de Segmento de índice = 1

Lo: 1.1.1.1/32

155

Alocação NÃO Recomendada de SRGB

Page 140: 2. Apresentação Minicurso "Roteamento por Segmentos

4 3 2 1 16001

Pacote dest: 1

16001

Pacote dest: 1

16001

Pacote dest: 1

16001

Pacote dest: 1

24000 ... 1.048.575

16000 Index 0 16001 Index 1 ... 23999 Index 7999

SR

GB

SR

GB

24000 ... 1.048.575

16000 Index 0 16001 Index 1 ... 23999 Index 7999

SR

GB

Loopback 1.1.1.1/32 Prefixo de Segmento de índice = 1

Lo: 1.1.1.1/32

24000 ... 1.048.575

16000 Index 0 16001 Index 1 ... 23999 Index 7999

156

Alocação Recomendada de SRGB

Page 141: 2. Apresentação Minicurso "Roteamento por Segmentos

Faixa de Rótulos Uso

0-15 Reservada para uso especial (Ex. Explicit e Implicit Null)

16-15999 Para rótulos MPLS estáticos

16000-23999 Para roteamento por segmentos

24000-1048575 Para roteamento dinâmico

157

Alocação de Rótulos para o MPLS e Roteam. Segmentos

Page 142: 2. Apresentação Minicurso "Roteamento por Segmentos

• Os rótulos do Segmentos de Nó (SRGB) são gerenciados por uma base de comutação de rótulos denominada LSD (Label Switching Database), preservando a faixa de 16000 a 23999 e alocando dinamicamente a partir de 24000

• Os rótulos dos Segmentos de Adjacência são obtidos pelo IGP como o OSPF e IS-IS através de suas extensões para Roteamento por Segmentos

158

Gerenciamento dos Segmentos

Page 143: 2. Apresentação Minicurso "Roteamento por Segmentos

• O IGP é responsável pela configuração e distribuição dos segmentos em redes multiárea (OSPF) e multinível (IS-IS)

• Interfaces Loopback dos roteadores representadas por Prefixo SID (Segmentos de Nó) e Segmentos de Adjacência para identificar as adjacências do nó

• O anúncio dos Prefixos SID é feito pelo Servidor de Mapeamento (Mapping Server)

• Utiliza extensões do protocolo IS-IS (draft-ietf-isis-segment-routing-extensions-02) e do OSPF (draft-ietf-ospf-segment-routing-extensions-05)

159

Plano de Controle IGP para Roteamento por Segmentos

Page 144: 2. Apresentação Minicurso "Roteamento por Segmentos

• Adicionam nos anúncios de estado de enlace LSA (Link State Advertisement) denominado de LSA opaco (Opaque LSA)

• Novos tipos (Type) de Opaque LSA para suportar Roteamento por Segmentos:

– Faixa de Rótulos: Opaque LSA Type 4

– SIDs de Segmentos de Nó: Opaque LSA Type 7

– Segmentos de Adjacência: Opaque LSA Type 8

160

Extensões do OSPF para Roteamento por Segmentos

Page 145: 2. Apresentação Minicurso "Roteamento por Segmentos

161

Opaque LSA

Page 146: 2. Apresentação Minicurso "Roteamento por Segmentos

• Informação dos Segmentos no LSA opaco

– LSA opaco anuncia o prefixo SID do Segmento de Nó

– LSA opaco pode anunciar SIDs do SRGB padrão e não padrão em instâncias separadas do OSPF

– Em cada instância do OSPF pode ser configurado com faixas de SRGB iguais (Overlapping SRGB) ou diferentes (Non-Overlapping SRGB)

– Prefixo SID é configurado manualmente sendo um valor absoluto ou índice atribuído à interface Loopback

162

Opaque LSA

Page 147: 2. Apresentação Minicurso "Roteamento por Segmentos

• Roteador originador anuncia as seguintes faixas de rótulos (SRGB não padrão) Non-Overlapping :

– Faixa 1: [100, 199]

– Faixa 2: [1000, 1099]

– Faixa 3: [500, 599]

• Os roteadores de destino recebem as faixas concatenando-os formando a SRGB não padrão: [100, 199], [500, 599],[1000, 1099]

– Os índices usam várias faixas:

• Índice 0: rótulo 100

• Índice 99: rótulo 199

• Índice 200: rótulo 500

163

Informações do Segmentos no Opaque LSA

Page 148: 2. Apresentação Minicurso "Roteamento por Segmentos

• Segmento de Adjacência tem significado local e é alocado automaticamente para cada adjacência, descrito em extensões do OSPF (Type-length-value - TLV e sub-TLV) com flags para anúncio e propagação dos prefixos:

– Bit A ligado gera uma extensão para o prefixo SID

– Bit N ligado indica que o prefixo identifica o nó

164

Informações do Segmentos no Opaque LSA

Page 149: 2. Apresentação Minicurso "Roteamento por Segmentos

• Detalhamento das Extensões do OSPF (TLV e sub-TLV)

Opaque LSA

Sub-TLV

Flag da sub-TLV

TLV

Flag da TLV

Configuração do Prefix SID Segmento de Nó

Configuração SID Segmento de Adjacência

166

Opaque LSA (TLV e sub-TLV)

Page 150: 2. Apresentação Minicurso "Roteamento por Segmentos

• São anunciados a múltiplos nós de rede

• Prefixo SID Anycast tem o mesmo SRGB

• Divulgados pelos ASBRs (Autonomous System Boundary Router)

• Em redes multiáreas os SIDs dos ASBRs são Anycast pois são únicos em todo domínio

• No OSPF os prefixos SID (Segmento de Nó) são propagados entre áreas, , mas os SID de adjacência (Segmento de Adjacência) não são propagados

167

Propagação de Prefixos entre Áreas: Prefixo SID Anycast

Page 151: 2. Apresentação Minicurso "Roteamento por Segmentos

A

B

C

ASBR1-A

ASBR1-B

ASBR2-A

ASBR2-B

Área Backbone

Área 1

Área 2

SID 70

SID 72

SID 72

SID 1001

SID 1001

SID 1002

SID 1002

SID unique (dentro da área)

SID Anycast

1002

Pacote dest: c

72

Pacote dest: c

72

Fast Reroute nativo

168

Propagação de Prefixos entre Áreas: Prefixo SID Anycast

Page 152: 2. Apresentação Minicurso "Roteamento por Segmentos

• Prefixos SID Anyscast – Propagação de prefixos e flags

Flags na Área 0

Flags na Área 1

1.1.1.1/32 SID 16001 NP=0, E=0 NP=1, E=0

1.1.1.2/32 SID 16002 NP=0, E=0 NP=0, E=0

2.2.2.2/32 SID 17002 NP=0, E=0 NP=0, E=0

1.1.1.3/32 SID 16003 NP=1, E=0 NP=0, E=0

Prefixos SID Anycast

propagados

R1

ASBR

Área 0

SID 16001

SID 16002

SID 17002

16003

1.1.1.3

17002

Área 1

R2 R3

SID 16003

Lo: 1.1.1.1/32

Lo: 1.1.1.2/32 Lo: 2.2.2.2/32

Lo: 1.1.1.3/32

16003

1.1.1.3 1.1.1.3

1.1.1.2 1.1.1.2

169

Propagação de Prefixos entre Áreas: Prefixo SID Anycast

Page 153: 2. Apresentação Minicurso "Roteamento por Segmentos

• A LAN representa a adjacência entre os nós

• É criado um “pseudonó” representando a LAN com um segmento de adjacência para cada nó

LAN

R1

R2

R3

PseudoNó

SID para R2

SID para R3

170

Roteamento por Segmentos Interligados por uma LAN

Page 154: 2. Apresentação Minicurso "Roteamento por Segmentos

• Arquitetura IP/MPLS

– Permite coexistir com múltiplos protocolos

– Protocolos de coexistência: LDP, RSVP-TE e Roteamento por Segmentos: plano de controle dual independente (Dual Plane)

– Estratégia: Roteamento por Segmentos reserva rótulos na faixa do SRGB e o MPLS fora desta faixa

– Escolha do caminho pode ser feita selecionando-se o LDP ou o Roteamento por Segmentos

171

Coexistência com outros protocolos legados

Page 155: 2. Apresentação Minicurso "Roteamento por Segmentos

172

• Duas formas de imposição de rótulos

– MPLS para IP e MPLS para MPLS: os rótulos são indexados na FIB e LFIB dos roteadores de núcleo segundo a estratégia de reserva de rótulos

– IP para MPLS: recebe o rótulo através do Roteamento por Segmentos ou pelo LDP (LDP é o preferencial), não simultâneamente

Coexistência com outros protocolos legados

Page 156: 2. Apresentação Minicurso "Roteamento por Segmentos

173

Local/ Label In

Out Label

1600

...

16005 16005

...

23999

24000

...

24002 24001

1048575

Local/ Label In

Out Label

1600

...

16005 24005

...

23999

24000

24001 32011

1048575

Local/ Label In

Out Label

1600

...

16005 24005

...

23999

24000

...

24005 16005

...

32011 24003

1048575

Local/ Label In

Out Label

1600

...

16005 Pop

...

23999

24000

...

24003 Pop

1048575

1 3 2 4

SR

GB

Lo: 1.1.1.5/32

5

MPLS IP Roteamento por Segmentos + LDP

MPLS para IP ou MPLS para MPLS

Page 157: 2. Apresentação Minicurso "Roteamento por Segmentos

SR

GB

Local/ Label In

Out Label

1600

...

16005 16005

...

23999

24000

...

24002 24001

1048575

Local/ Label In

Out Label

1600

...

16005 24005

...

23999

24000

24001 32011

1048575

Local/ Label In

Out Label

1600

...

16005 24005

...

23999

24000

...

24005 16005

...

32011 24003

1048575

Local/ Label In

Out Label

1600

...

16005 Pop

...

23999

24000

...

24003 Pop

1048575

1 3 2 4

Lo: 1.1.1.5/32

5

IP IP

Roteamento por Segmentos + LDP MPLS

IPv4: Dest

1.1.1.5

Payload

Qual rótulo a ser inserido ?

174

IP para MPLS

Page 158: 2. Apresentação Minicurso "Roteamento por Segmentos

• Manter a execução de 2 planos de controle independentes na Rede IP/MPLS legada com os seguintes passos:

– Atualização dos Roteadores de Núcleo para suportar Roteamento por Segmentos

– Imposição de rótulos feita preferencialmente pelo Roteamento por Segmentos

– Remover o LDP, simplificando a rede IP/MPLS

175

Estratégia para Migração para Roteamento por Segmentos

Page 159: 2. Apresentação Minicurso "Roteamento por Segmentos

• Utilizado para interoperabilidade entre roteadores que suportam Roteamento por Segmentos e roteadores que não suportam

• Servidor onde os prefixos de rede e os SIDs são mapeados

• Servidor deve ser redundante

• Instância do IGP usado para calcular ou recalcular SIDs a partir de regras

• Os nós que suportam Roteamento por Segmentos são clientes do servidor de mapeamento

176

Servidor de Mapeamento

Page 160: 2. Apresentação Minicurso "Roteamento por Segmentos

177

• Impede nós que não suportam Roteamento por Segmentos enviem LSAs aos nós que suportam

• Anúncios do servidor de mapeamento utiliza as extensões do OSPF e IS-IS

• Múltiplos servidores de mapeamento deve ter o mapeamento de prefixos de rede e SID iguais para manter a consistência

• Caso não haja consistência, o cliente escolhe a entrada que não tem sobreposição com a política ativa

Servidor de Mapeamento

Page 161: 2. Apresentação Minicurso "Roteamento por Segmentos

Verificador de políticas

locais

Configuração

Políticas Locais

Gerenciador de Mapeamento

Calculadora de Políticas

RIB

Analisador LSP/LSA

Gerador LSP/LSA

Servidor de Mapeamento

Cliente de Mapeamento

Políticas Ativas

Políticas Backup

Procura Prefixo SID

Entradas de Mapeamento

local

Políticas Locais

Entrada de Mapeamento

remota

Entrada de Mapeamento local do Gerenciador

de Mapeamento Cache Políticas Locais

IGP

178

Arquitetura do Servidor de Mapeamento

Page 162: 2. Apresentação Minicurso "Roteamento por Segmentos

Interoperabilidade entre Roteam. Segmentos/LDP

• Modelos de interoperabilidade:

– Roteamento por Segmentos para LDP

– LDP para Roteamento por Segmentos

– Roteamento por Segmentos sobre LDP

– LDP sobre Roteamento por Segmentos

179

Page 163: 2. Apresentação Minicurso "Roteamento por Segmentos

180

Interoperabilidade entre Roteam. Segmentos/LDP

Page 164: 2. Apresentação Minicurso "Roteamento por Segmentos

• Roteamento por Segmentos para LDP

– Anuncia os prefixos SID na tabela LFIB dos roteadores do domínio LDP

– Realizado pelo Servidor de Mapeamento

• LDP para Roteamento por Segmentos

– Conecta um LSP criado no domínio do LDP ao prefixo SID do domínio de Roteamento por Segmentos

– Realizado por uma entrada na LFIB em cada um dos domínios

181

Modelos de Interoperabilidade Roteam. Segmentos/LDP

Page 165: 2. Apresentação Minicurso "Roteamento por Segmentos

182

Local/ Label In

Out Label

1600

16005 90090

...

90002 90090

...

1048575

Local/ Label In

Out Label

1600

...

...

90090 Pop

...

1048575

Local/ Label In

Out Label

1600

16005 16005

...

...

1048575

Local/ Label In

Out Label

1600

16005 16005

...

...

1048575

Cópia

1 3 2 4

Lo: 1.1.1.5/32

5

IP

Domínio LDP Domínio SR

FIB LDP

1.1.1.5/32 Lbl 90007

SID: 16005 ?

Segmento LSP

LDP 1.1.1.5/32

Lbl Impl Null

Entrada do Servidor de Mapeamento

Roteamento por Segmentos para LDP

Page 166: 2. Apresentação Minicurso "Roteamento por Segmentos

Local/ Label In

Out Label

1600

...

...

90008 90100

...

1048575

Local/ Label In

Out Label

1600

...

...

90100 90007

...

1048575

Local/ Label In

Out Label

1600

16005 16005

...

90007 16005

...

1048575

Local/ Label In

Out Label

1600

16005 Pop

...

90007 90007

...

1048575

1 3 2 4

Lo: 1.1.1.5/32

5

IP

LDP 1.1.1.5/32 Lbl 90100

FIB LDP

1.1.1.5/32 Lbl 90007

SID: 16005

Segmento LSP

183

Cópia

Domínio LDP Domínio SR

Entrada da Tabela FIB

LDP para Roteamento por Segmentos

Page 167: 2. Apresentação Minicurso "Roteamento por Segmentos

184

• Roteamento por Segmentos sobre LDP

– Cada roteador da fronteira mapeia o prefixo SID ao LSP obtido pelo protocolo LDP

– Se o caminho terminar em um domínio LDP é necessário o Servidor de Mapeamento

• LDP sobre Roteamento por Segmentos

– O LSP é mapeado em um prefixo SID

– Necessário o Servidor de Mapeamento

Modelos de Interoperabilidade de Roteam. Segmentos e LDP

Page 168: 2. Apresentação Minicurso "Roteamento por Segmentos

185

• TI-LFA (Topology Independent Loop Free Alternate)

– É uma técnica de re-roteamento para convergência rápida da rede

– Tempo de convergência de 50 ms é inferior ao tempo de convergência da rede

– Baseado no mecanismo clássico de LFA-FRR (Loop Free Alternate Fast Reroute)

– O TI-LFA evita os ciclos que podem ocorrer no LFA-FRR clássico

– Algoritmo elaborado para total cobertura de nós sem ciclos e com tempo de convergência inferior a 50 ms, forçando um caminho ótimo (pós-convergência)

Mecanismo de Proteção TI-LFA

Page 169: 2. Apresentação Minicurso "Roteamento por Segmentos

186

3

7

2

6

1

5

8

Origem

Destino

Nó 1 é LFA para o destino 5

Caminho principal Caminho clássico LFA FRR Caminho pós-convergência do IGP

LFA-FRR Clássico

Page 170: 2. Apresentação Minicurso "Roteamento por Segmentos

187

3

7

2

6

1

5

8 Origem

Destino

Nó 6 não é LFA para o destino 5

Caminho principal Caminho clássico LFA FRR Caminho pós-convergência do IGP

Ciclo

LFA-FRR Clássico

Page 171: 2. Apresentação Minicurso "Roteamento por Segmentos

188

• Algoritmo PQ

– Divide a rede em 2 espaços: P e Q

– Algoritmo proprietário da Cisco e não está no escopo de padronização do IETF

– Usado no balanceamento e proteção de tráfego

Algoritmo PQ

Page 172: 2. Apresentação Minicurso "Roteamento por Segmentos

189

• Algoritmo PQ

– Espaço P: nó de origem S (Source) e conjunto dos nós que tenham caminho para o nó de destino D (Destin) até o nó P, sem usar o enlace L a ser protegido

– Espaço Q: conjunto de nós a partir do nó Q que podem chegar até D sem usar o enlace L a ser protegido

– Espaço P e Q são disjuntos

– Nó P une o espaço P ao espaço Q

– Nó Q une o espaço Q ao espaço P

– Espaço P estendido: conjunto de nós do espaço P com vizinhos de S e D

– Nó P e Q podem ser o mesmo nó

Algoritmo PQ - Definições

Page 173: 2. Apresentação Minicurso "Roteamento por Segmentos

190

P Space

Q Space

S P Q D

Caminho Principal (L)

TI LFA (caminho pós-convergência)

Caminho L

P Space

Q Space

S

PQ D

Caminho Principal (L)

TI LFA (caminho pós-convergência)

Caminho L

Algoritmo PQ – Espaço P e Q

Page 174: 2. Apresentação Minicurso "Roteamento por Segmentos

191

• Implementação do caminho de proteção TI-LFA com Roteamento por Segmentos, utiliza o Algoritmo PQ:

– Caso 0: Se o nó P = Q for vizinho de S não precisa configurar segmento

– Caso 1: Se o nó P = Q não é vizinho de S precisa configurar um segmento de nó cujo prefixo SID é do nó PQ {Prefix-SID(PQ)}

– Caso 2: Se o nó P <> Q então precisa configurar 2 segmentos, onde um segmento de nó vai do nó S até o nó P {Prefix-SID(P)} e um segmento de adjacência de P a Q {Adj-SID(PQ)}

TI-LFA com Roteamento por Segmentos

Page 175: 2. Apresentação Minicurso "Roteamento por Segmentos

192

R2

R3

R1

R4

A Z

R5

Caminho principal Caminho Pós-Convergência Segmentos

P-Space

Q-Space P = Q

Prefixo- SID(Z)

Pacote dest: Z

Pacote dest: Z

P-Space

Q-Space

Extended P-Space

• Caso 0: TI LFA com nenhum segmento a partir de P

Origem (S)

Destino (D)

TI-LFA com Roteamento por Segmentos – Caso 0

Pacote dest: Z

Pacote dest: Z

Page 176: 2. Apresentação Minicurso "Roteamento por Segmentos

193

R2

R3

R1

R4

A Z

R5

Origem (S) Destino (D)

Extended P-Space

Q-Space PrefixoSID(R4)

Pacote dest: Z

Pacote dest: Z

P = Q

P-Space

Prefixo SID(Z)

Pacote dest: Z

Prefixo SID(Z)

Caminho principal Caminho Pós-Convergência Segmentos

P-Space

Q-Space

Extended P-Space

• Caso 1: TI LFA com 1 segmento a partir de P

Pacote dest: Z

TI-LFA com Roteamento por Segmentos – Caso 1

Page 177: 2. Apresentação Minicurso "Roteamento por Segmentos

194

R2

R3

R1

R4

A Z

R5

Origem (S)

Destino (D)

Q-Space

Prefixo SID(R4)

Pacote dest: Z

Pacote dest: Z

Pacote dest: Z

P

P-Space

adj- SID(R3)

Pacote dest: Z

Prefixo- SID(Z)

Caminho principal Caminho Pós-Convergência Segmentos

P-Space

Q-Space

Extended P-Space

Prefixo- SID(Z)

Q

Pacote dest: Z

adj- SID(R3)

Prefixo- SID(Z)

• Caso 2: TI LFA com 2 segmentos a partir de P

TI-LFA com Roteamento por Segmentos – Caso 2

Page 178: 2. Apresentação Minicurso "Roteamento por Segmentos

195

• Balanceamento e proteção do tráfego

– TI-LFA usa caminhos ECMP (Equal-Cost Multipath Routing) balanceando o tráfego através de uma função hash

• Proteção em redes mistas MPLS com LDP e com Roteamento por Segmentos

– Roteamento por Segmentos implementado em “ilhas”

– Influencia a proteção do roteamento da rede IP/MPLS

– Prefixos SID anunciados pelo Servidor de Mapeamento

Aplicações do TI-LFA

Page 179: 2. Apresentação Minicurso "Roteamento por Segmentos

196

5

4

2

3

1 7

6

Origem

Destino 1

P

Métrica padrão: 10

8

Destino2

P

Q

Q

1000

1000

Balanceamento e Proteção com TI-LFA

Page 180: 2. Apresentação Minicurso "Roteamento por Segmentos

197

Segmentos

2

3

1

4

A

5

Origem

Z

Destino

PQ

Q-Space

P-Space

P-Space

Q-Space

Extended P-Space

SR + LDP:nó 1 e 4 LDP: nós 2,3 e 5

Extended P-Space

Proteção em Redes IP/MPLS com TI-LFA

Page 181: 2. Apresentação Minicurso "Roteamento por Segmentos

198

• Engenharia de Tráfego com Roteamento por Segmentos SR-TE (Segment Routing – Traffic Engineering)

– Configuração, modificação e remoção de caminhos TE

– Plano de controle centralizado através de um controlador SDN ou de forma distribuída nos roteadores

– Controlador SDN toma decisões de roteamento que podem ser diferentes do IGP, a partir da base de dados do PCE

– Roteador de Núcleo de origem SRTE (Segment Routing Traffic Engineering Head End) classifica os pacotes e cria a lista de segmentos

– Roteador intermediários (Mid Points) não necessitam de estados adicionais na LFIB e sinalizações do RSVP-TE

– Programação da rede através de APIs (Northbound Interfaces)

Aplicações e Serviços para Roteamento por Segmentos

Page 182: 2. Apresentação Minicurso "Roteamento por Segmentos

199

Stateful PCE TED

PCEP Lista de Segmentos: 10,20,30,40

Stateful PCC

LSP DB

BGP-LS

Aplicação SDN

Requisição de Caminho

10

30 20

40

30 20

40

30 40

40

Engenharia de Tráfego com Roteamento por Segmentos

Page 183: 2. Apresentação Minicurso "Roteamento por Segmentos

200

A

Z

Roteadores do Plano A

Roteadores do Plano B

SID 65

ECMP – Equal Cost MultiPath Routing somente no Plano A

4 saltos, Segmentos {111,65}

SID 111

A

Z

Roteadores do Plano A

Roteadores do Plano B

SID 65

ECMP – Equal Cost MultiPath Routing para Plano A+B

4 saltos, Segmentos {65}

• Engenharia de Tráfego com Roteamento por Segmentos para criação de túneis disjuntos em planos separados

Engenharia de Tráfego com Roteamento por Segmentos

Page 184: 2. Apresentação Minicurso "Roteamento por Segmentos

201

• Orquestração da Engenharia de Tráfego com Roteamento por Segmentos SR-TE (Segment Routing – Traffic Eng.) através de Redes Definidas por Software

Visualização e Análise

Orquestração de Banda

Coletor de Dados

Programação

API

Aplicativos Aplicativos

Controlador SDN Desejo 2G de A para Z !

A B C

E F G H

D

Z

66

68

65

Túnel de A para Z com Segmentos { 66,68, 65}

O caminho ABCGHZ está Ok. Existe capacidade disponível

de 2G, então vou dirigir o tráfego para este caminho !

O enlace por CD não capacidade para 2G ! Não

posso utilizar o menor caminho através do

segmento 65 de A a Z !

3G

3G

3G

4G

1G

1G

4G

3G

4G

4G

4G

4G

Engenharia de Tráfego com Roteamento por Segmentos

Page 185: 2. Apresentação Minicurso "Roteamento por Segmentos

202

• Controle OAM (Operations, Administration and Maintainance)

– Uso de segmentos de adjacência para monitorar cada enlace de rede usado em redes extensas e complexas

• Automação de “peering” de roteadores de diferentes sistemas autônomos

– Controlador SDN aprende SIDs dos “peers”, através do BGP-LS simplificando o uso do protocolo BGP em redes IP/MPLS

Aplicações e Serviços para Roteamento por Segmentos

Page 186: 2. Apresentação Minicurso "Roteamento por Segmentos

203

C D

F G

H

B

E

A 9101 9105 9103 9107 9105 9101

9101 9105

9107

9103

9105

9101 9101 9105 9103 9107 9105

9101 9105 9103 9107

9101 9105 9103

9101 9105

9101

Controle OAM

Page 187: 2. Apresentação Minicurso "Roteamento por Segmentos

204

A

B

AS 1

Sinalização BGP EPE do PE de Egresso para o Controlador SDN

Peer/ Segmento do Nó SID 1012 : pop e encaminhe para 1.0.1.2/32 1022 : pop e encaminhe para 1.0.2.2/32 Peer/ Segmento de Adjacência 1032 : pop e encaminhe para 1.0.3.2/32 1042 : pop e encaminhe para 1.0.4.2/32

AS 2

AS 3

Peers

D G

E

F

K AS 4

Controlador SDN

1.0.1.2/24

1.0.2.1/24

1.0.3.1/24 1.0.3.2/24

1.0.2.2/24

PE de Egresso (EPE)

C

Automação de “peering”

Page 188: 2. Apresentação Minicurso "Roteamento por Segmentos

205

• Cadeia de serviços com Roteamento por Segmentos

– Aplicável no plano de encaminhamento de dados MPLS e IPv6

– Nó (virtual ou físico) que conecta a instância do serviço origina um segmento local

– SID local é conhecido pelo nó de ingresso através de um controlador SDN

– Aplicável ao NFV (Network Functions Virtualization)

– IETF definiu transporte de serviços em um cabeçalho NSH (Network Service Header) que identifica a cadeia (path id)

– IETF está trabalhando para integrar o NSH ao Roteamento por Segmentos, mapeando-os no path id

Aplicações e Serviços para Roteamento por Segmentos

Page 189: 2. Apresentação Minicurso "Roteamento por Segmentos

Cadeia de Serviços com Roteamento por Segmentos

206

A Ingresso

B

S1

C

S2

O nó de ingresso classifica o fluxo e aplica a cadeia de serviço S1, S2

B e C anunciam S1 e S2 como SIDs para as

instâncias de serviço anexadas

Segmento Local

Segmento Local

Page 190: 2. Apresentação Minicurso "Roteamento por Segmentos

Padronização IETF

207

• Conduzida pelo IETF no grupo de trabalho SPRING WG (Source Packet Routing in Networking Working Group)

Documento

IETF Grupo de Trabalho Draft Tópicos do Draft

Arquitetura

Roteamento

por

Segmentos

SPRING draft-ietf-spring-segment-routing Arquitetura SR

SPRING draft-ietf-spring-segment-routing-mpls SR MPLS

SPRING draft-ietf-spring-segment-routing-ldp-

interop

Interoperabilidade SR e LDP

SPRING draft-filsfils-spring-sr-recursing-info SID associados a serviços locais

SPRING draft-ginsberg-spring-conflict-resolution Solução para conflitos de anúncio de

SIDs por instâncias diferentes de

protocolo

SPRING draft-psarkar-spring-mpls-anycast-

segments

Anycast SID

SPRING draft-francois-spring-segment-routing-ti-

lfa-02

TI LFA

Page 191: 2. Apresentação Minicurso "Roteamento por Segmentos

208

Documento

IETF Grupo de Trabalho Draft Tópicos do Draft

Extensões de

Protocolos

ISIS draft-ietf-isis-segment-routing-extensions Extensões do IS-IS para SR

ISIS draft-ietf-isis-prefix-attributes Extensões do IS-IS para SR

ISIS draft-ginsberg-isis-l2bundles Extensões do IS-IS para SR

ISIS draft-previdi-isis-ipv6-prefix-sid Extensões do IS-IS para SR

OSPF draft-ietf-ospf-segment-routing-

extensions

Extensões do OSPF para SR

IDR draft-ietf-idr-bgpls-segment-routing-epe Extensões do BGP para SR

IDR draft-ietf-idr-bgp-prefix-sid Extensões do BGP para SR

IDR draft-sreekantiah-idr-segment-routing-te Aúncio de políticas SR TE usando BGP

IDR draft-gredler-idr-bgp-ls-segment-routing-

ext

Extensões do BGP-LS para SR

IDR draft-gredler-idr-bgplu-epe Extensões do BGP-LU para SR

PCE draft-ietf-pce-segment-routing Extensões do PCEP para SR

PCE draft-sivabalan-pce-binding-label-sid Extensões do PCEP para SR

6MAN draft-previdi-6man-segment-routing-

header

SR em IPv6

6MAN Draft-evyncke-6man-segment-routing-

security

SR em IPv6

BFD draft-akiya-bfd-seamless-sr BFD (Bidirectional Failure Detection)

para SR

Padronização IETF

Page 192: 2. Apresentação Minicurso "Roteamento por Segmentos

209

Documento

IETF Grupo de Trabalho Draft Tópicos do Draft

Casos de Uso

SPRING draft-ietf-spring-problem-statement Arquitetura SR para tráfego unicast

SPRING draft-ietf-spring-resiliency-use-case Casos de uso SR resilientes

SPRING draft-ietf-spring-ipv6-use-case Casos de uso SR em IPv6

SPRING draft-ietf-spring-oam-requirement OAM

SPRING draft-ietf-spring-oam-usecase OAM

SPRING draft-ietf-spring-segment-routing-msdc Uso massivo de Daatcenters

SPRING draft-ietf-spring-segment-routing-central-

epe

Egress PE (Peering)

SPRING draft-filsfils-large-scale-interconnect Rede SR de grande escala

MPLS draft-kumarkini-mpls-spring-lsp-ping LSP ping/trace para SR

Padronização IETF

Page 193: 2. Apresentação Minicurso "Roteamento por Segmentos

Roteiro

• Introdução

• Limitações das Tecnologias das Redes de Núcleo

• Conceitos de Redes Definidas por Software

• Roteamento por Segmentos

• Experimentação Prática

• Considerações Finais e Direções Futuras

210

Page 194: 2. Apresentação Minicurso "Roteamento por Segmentos

211

• Utilização da ferramenta OSHI (Open Source Hybrid IP/SDN networking)

– Desenvolvida para o Projeto Dreamer (Distributed Resilient Architecture meeting Carrier Grade Requirements) da GÉANT que representa a Rede de Pesquisa e Educação Pan-Européia

– Objetivo: investigar e prototipar redes definidas por software baseadas em protocolo Openflow e provendo as mesmas funcionalidades das redes IP/MPLS

– Simulador de rede que trabalha com nós de rede reais e virtuais com implementação em software aberto

– Southbound interface: OpenFlow

– Northbound interface: REST

– Controlador SDN: Floodlight, Ryu e ONOS

Experimentação Prática

Page 195: 2. Apresentação Minicurso "Roteamento por Segmentos

212

Prática: Projeto DREAMER – Rede GÉANT

Page 196: 2. Apresentação Minicurso "Roteamento por Segmentos

213

• Ferramenta OSHI

– Encapsulamento do tráfego em túneis:

• VLAN

• Q-In-Q

• MPLS

• Ethernet PBB (Provider Backbone Bridge)

– 3 formas de aplicação:

– No Virtualbox “run time”, onde cada dispositivo usa uma VM

– No ambiente de simulação do Mininet (*)

– Provas de conceito de redes SDN (Projeto OFELIA – OpenFlow in Europe Linking Infrastructure and Applications)

(*) Opção usada nos experimentos

Ferramenta OSHI

Page 197: 2. Apresentação Minicurso "Roteamento por Segmentos

214

• Nó OSHI

– Combina o encaminhamento tradicional IP (com OSPF) e encaminhamento em SDN implementada por Open vSwitch (OpenFlow Capable Switch - OFCS)

– Possui um “daemon” de roteamento IP baseado em Quagga

– Encaminhador de pacotes IP implementado com Kernel Linux

– Encaminhador de pacotes ligado ao conjunto de portas virtuais do OFCS

• Configuração de Caminhos

– SBP (SDN Based Paths) é uma configuração de circuito virtual usando SDN para transmitir fluxo de pacotes entre 2 pontos

Arquitetura do Nó OSHI

Page 198: 2. Apresentação Minicurso "Roteamento por Segmentos

215

Daemon de Roteamento IP

(Quagga)

Encaminhador de Pacotes

(Rede Linux)

Switch SDN (Open vSwitch)

Portas Virtuais IP

SDN

Ro

tea

me

nto

e

en

ca

min

ha

me

nto

IP

SD

N/S

wit

ch

O

pe

nFlo

w

Portas físicas

Roteamento e Encaminhamento IP

SDN/ Switch

OpenFlow

Arquitetura do Nó OSHI

Page 199: 2. Apresentação Minicurso "Roteamento por Segmentos

216

• Serviços simulados pela ferramenta OSHI:

– Circuitos Virtuais alugados (Virtual Leased Lines - VLL) (*)

– Pseudo fio (Pseudowires - PW) de camada 2

– Switches virtuais de camada 2 (Virtual Switched Services -VSS) sobre um Backbone IP/MPLS

– Engenharia de tráfego em redes IP/MPLS (túneis TE)

– Roteamento por Segmentos (*)

(*) Objeto dos experimentos

Arquitetura do Nó OSHI

Page 200: 2. Apresentação Minicurso "Roteamento por Segmentos

217

• Emulador de rede Mininet

– Cria redes virtuais com servidores, comutadores, controladores e enlaces virtuais em uma única máquina física

– Ideal para experimentos com OpenFlow e redes SDN

h1 h2

Controlador POX - C0

Switch S1

Aplicação SDN

Aplicação Aplicação

Rede Emulada no Mininet

Rede com Hardware físico

eth0 eth0

eth1 eth2

Introdução ao Mininet

Page 201: 2. Apresentação Minicurso "Roteamento por Segmentos

218

Servidor HTTP # 1

Servidor HTTP # 2

Cliente

Roteador

192.168.2.2 172.64.3.10

eth2 172.64.3.1

eth1 192.168.2.1

eth3 10.0.1.11

10.0.1.100

Tarefa 1: Rede com 2 servidores E um cliente, cada um destes ligado a um Switch OpenFlow cada, e estes conectados ao Roteador

Experimento 1: Construção de uma Rede Simples com Mininet

Page 202: 2. Apresentação Minicurso "Roteamento por Segmentos

219

Ver caderno de Prática 1: “Construção de uma Rede simples com roteamento no Mininet”

Disponível em http://www.gta.ufrj.br/~silverio/SRArquivoSBRC2016.htm.

Experimento 1: Construção de uma Rede Simples com Mininet

Page 203: 2. Apresentação Minicurso "Roteamento por Segmentos

220

Tarefa 2: Configurar o serviço Pseudowire MPLS em um Backbone IP/MPLS (com PE´s e P´s) legado

(protocolo LDP) com a ferramenta OSHI

ROTEADOR CE

PE OSHI

P OSHI

CONTROLADOR RYU OU FLOODLIGHT

P OSHI

PE OSHI

P OSHI

ROTEADOR CE

PSEUDOWIRE

MPLS PAYLOAD CETH PETH

Experimento 2: Criação de um Serviço MPLS com LDP no OSHI

Page 204: 2. Apresentação Minicurso "Roteamento por Segmentos

221

Ver caderno de Prática 2: “Criação de um Serviço em rede MPLS-TE através da ferramenta OSHI”

Disponível em http://www.gta.ufrj.br/~silverio/SRArquivoSBRC2016.htm.

Experimento 2: Criação de um Serviço MPLS com LDP no OSHI

Page 205: 2. Apresentação Minicurso "Roteamento por Segmentos

222

B C

D E

F

90

A

69

23

90 23 69

90 23

90

Tarefa 3: Configurar o túnel MPLS em um Backbone IP/MPLS (com PE´s e P´s) configurando

Roteamento por Segmentos com a ferramenta OSHI SR* - Segment Routing

Experimento 3: Criação de um Serviço MPLS com SR* no OSHI

Page 206: 2. Apresentação Minicurso "Roteamento por Segmentos

223

Ver caderno de Prática 3: “Criação de um serviço em rede MPLS TE com Roteamento por Segmentos através da ferramenta OSHI”

Disponível em http://www.gta.ufrj.br/~silverio/SRArquivoSBRC2016.htm.

Experimento 3: Criação de um Serviço MPLS com SR* no OSHI

Page 207: 2. Apresentação Minicurso "Roteamento por Segmentos

Roteiro

• Introdução

• Limitações das Tecnologias das Redes de Núcleo

• Conceitos de Redes Definidas por Software

• Roteamento por Segmentos

• Experimentação Prática

• Considerações Finais e Direções Futuras

224

Page 208: 2. Apresentação Minicurso "Roteamento por Segmentos

225

• Aplicação em Redes Multicamadas (MultiLayer)

– Aumentar a eficiência do uso da capacidade de redes multicamadas

– Suportado por Redes Definidas por Software

– Sem necessidade da sinalização e operação GMPLS (Generalized MPLS)

– Controlador com Roteamento por Segmentos engloba informações de engenharia de tráfego e topologia da rede

– Controle das condições de transmissão óptica (impairments), ocupação do espectro óptico, adição, retirada e multiplexação de canais

Considerações Finais e Direções Futuras

Page 209: 2. Apresentação Minicurso "Roteamento por Segmentos

226

Local/ Label In

Actions

100 Pop,Out p1

102 Pop, Out p2

103 Out p2

104 Pop, out p3

105 out p3

...

100 102 101 103 104 105

Controlador SR

c2

p1

c1

p2

p3

p1 p2

p3

Roteadores de Núcleo IP/MPLS

Equipamentos Ópticos ROADM (Reconfigurable Add Drop Multiplexer)

• Rota expressa óptica conforme a necessidade do tráfego

Considerações Finais e Direções Futuras

Page 210: 2. Apresentação Minicurso "Roteamento por Segmentos

227

• Outras aplicações em desenvolvimento

– Roteamento por Segmentos em Redes “Carrier Ethernet” com adição de segmentos no quadro ethernet (conceito de “OmniEthernet”)

– Integração com funções de redes na NFV, para transporte das informações da cadeia de serviços

– Roteamento por Segmentos em Datacenters focado em aumento da velocidade de dados IO e eficiência, através de uma arquitetura escalar e flexível (Fast Data Project – FD.io)

Considerações Finais e Direções Futuras

Page 211: 2. Apresentação Minicurso "Roteamento por Segmentos

228

Operadoras de Telecomunicações enfrentam grandes desafios: tamanho e complexidade da rede IP/MPLS, com utilização não otimizada de recursos em várias camadas e dificuldades de administração e operação, pela ausência de um controle Centralizado com visão total da topologia de rede.

Roteamento por Segmentos

Redes Definidas por Software

Simplificação Redução de estados nos roteadores Melhoria operacional

Controle Centralizado Otimização dos recursos da rede Programabilidade

Considerações Finais e Direções Futuras

Page 212: 2. Apresentação Minicurso "Roteamento por Segmentos

229

Roteamento por

Segmentos

(SR – Segment Routing)

Redes Definidas por

Software

(SDN - Software

Defined Networks)

Considerações Finais e Direções Futuras

Page 213: 2. Apresentação Minicurso "Roteamento por Segmentos

230

Faz tudo !!!

Page 214: 2. Apresentação Minicurso "Roteamento por Segmentos

Obrigado!

Antonio José Silvério

COPPE – UFRJ

PEE - Programa de Engenharia Elétrica

GTA – Grupo de Teleinformática e Automação

E-MAIL: [email protected]

[email protected]