Escolar Documentos
Profissional Documentos
Cultura Documentos
http://www.gta.ufrj.br
1
Este trabalho contou com suporte da Embratel, CAPES, CNPq e FAPERJ
Roteiro
• Introdução
• Experimentação Prática
• Introdução
• Experimentação Prática
Tempo de
comercialização Meses Segundos
Granularidade de
Comprimento de onda (100G) Flexível (OM – 100G)
enlaces
4
Rede de Roteadores de Núcleo
da Operadora de Telecom.
5
Rede de Roteadores de Núcleo
da Operadora de Telecom.
PROBLEMAS !
6
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)
7
Roteador de Núcleo IP/MPLS
Lógica de Controle R
O
BGP OSPF IS-IS T
E
Driver Sistema Operacional (SO) A
D
Roteador IP/MPLS Barramento proprietário O
de Núcleo R
Hardware Dedicado
8
Rede Atual de Roteadores de
Núcleo das Operadoras
−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 Roteadores de Borda
Roteadores Intermediários
Malha Lógica de Túneis e
Rede de Enlaces Físicos
A B A B
C D C D
A B
Túnel A-B
A B D
Túnel A-D
10
Cálculo de Túneis TE
A B Quantidade total de
Túneis Unidirecionais = n2 n
C D
Quantidade total de
Túneis Bidirecionais =
n2 n
Malha Lógica de Túneis 2
n = número de nós
11
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
n = número de nós
k = número de Túneis para
túneis para balanceamento
balanceamentos
entre A e B
Rede física
de enlaces D
C
Quantidade de
Túneis Unidirecionais = k ( n 2 n)
• 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
FLA
Rede IP/MPLS
FLA
desacoplada da
Rede física RCE
SDR RCE
BSA
SDR
BSA
RPO BHE
Por acaso
é o Roteamento por
Segmentos ?
15
Propostas de Evolução da
Rede de Roteadores de Núcleo
PCE – PATH COMPUTATION ELEMENT • Roteamento por Segmentos +
SDN FLA Redes Definidas por Software
−Simplificação do roteamento,
RCE
configuração e manutenção dos
SDR
túneis
BSA
−Manutenção de estados apenas
BHE
nos Roteadores de borda da
RPO
rede
RJO
−Cálculo dos caminhos baseado
SPO em uma plataforma de Redes
Túnel Primário
CTA
Túnel Backup Definidas por Software
PAE
−Engenharia de tráfego otimizada
−Uso racional dos recursos da
rede 16
O que é o Roteamento por
Segmentos?
•Roteamento por Segmentos (Segment Routing - SR)
É um protocolo de roteamento pela origem
Segmento A-E
Segmento E-F
• Introdução
• Experimentação Prática
20
Roteamento Atual de Redes
TCP/IP
• 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
21
Roteamento Atual de Redes
TCP/IP
• Como é o Roteamento atual das Redes TCP/IP ?
Tamanho da Tabela Decisão da rota é
de Roteamento é feita salto a salto
uma limitação ! (hop by hop)
Tabelas Maiores:
• Maior tempo de busca e seleção de rota
• Maior processamento
• Pouca escabilidade
22
Evolução do Roteamento
em Redes TCP/IP
• 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)
23
Introdução às Redes IP/MPLS
• Motivação:
– Convergência da comunicação digital (voz, dados e vídeo)
– Integração com redes legadas como Frame Relay e ATM
24
Roteadores de Núcleo da Rede
IP/MPLS
25
Roteadores de Borda do Núcleo
da Rede
Tabelas do MPLS
Plano de Controle
Protocolos de
Plano de Controle: Roteamento OSPF, BGP...
Troca de Informação
RIB (Routing com outros roteadores
Information Base) Tabela de Roteamento
(RIB)
LIB (Label Information
Base) Protocolo de Controle
MPLS para o roteamento
IP Troca de Informação
LDP (LIB) com outros roteadores
Plano de Controle
Base) Tabela de Roteamento
com outros roteadores
(RIB)
Protocolo de Controle
MPLS
para o roteamento IP
Troca de Informação
LDP (LIB)
com outros roteadores
28
Estrutura do Rótulo MPLS
Outer ou Top
Label (S=0) Inner ou Bottom
Label (S=1)
Implementação
de Serviços
com empilhamento
de rótulos
30
Rede IP/MPLS como Rede
Multiserviço
• 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
Protocolos do Plano de Controle
da Rede IP/MPLS
• 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
Arquitetura da Rede IP/MPLS
33
Roteador Cliente
34
Roteador de Borda
35
Roteador Intermediário
36
Arquitetura de Rede IP/MPLS
LSR LSR
LER LER CE
CE LSR
LSR LSR
CE – Customer Edge
Pacote IP
LER – MPLS Label Edge Router ou PE – Provider Edge
LSR – MPLS Label Switch Router ou P – Provider Pacote MPLS
LSP – Label Switched Path Diferentes rótulos MPLS
Enlace de Fibra Óptica 37
Operações com Rótulos MPLS
• Alocação de rótulo
– Aloca um determinado rótulo para uma FEC, efetuado pelo
Roteador de Borda
38
Operações com Rótulos MPLS
39
Operações com Rótulos MPLS
IPv4 Pacote IPv4
Lbl Lbl
IN Out L IPv4 Pacote MPLS
68 54 Ip Origem: 100.10.0.1
Label LSR Ip Destino: 200.20.0.1
Label
Label Swap
Swap Label
Push 1 2 Pop
IP Porta
dest LFIB IP Porta
FIB dest
100.10.0.1/24 local
100.10.0.1/24 1
200.20.0.1/24 1 FEC
200.20.0.1/24 local 40
Serviços de Rede IP/MPLS
41
Rede Privativa Virtual L3
• 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
43
Rede Privativa Virtual L3
44
Rede Privativa Virtual L3
Cliente A Cliente A
LSR
10.5.1.0/24
10.2.1.0/24 LER BGP
200.4.1.1
OSPF OSPF Cliente B
Cliente B LER
10.2.1.1
Rede IP/MPLS BGP
10.2.1.0/24 10.2.1.0
10.3.1.0/24
BGP 190.5.5.1
Cliente A
38 79 10.2.1.0
10.5.1.0/24 LSR
43 79 10.2.1.0
ESTÁTICA
CE LER FEC Next Hop Label
MP-BGP
10.2.1.0 190.5.1.1 79
190.5.5.1 38
IPv4 Pacote IPv4
VRF do cliente A
VRF do cliente B L L IPv4 Pacote MPLS com aplicação VPN
45
Rede Privativa Virtual L2
BGP
Cliente A
LER
IPv4
Rede IP/MPLS
LER
Cliente A CE
47
QoS em Redes IP/MPLS
48
QoS em Redes IP/MPLS
Version ToS
Byte Len ID Offset TTL Proto FCS IP SA IP DA Data
Length
Pacote IPv4
7 6 5 4 3 2 1 0
Standard IPv4
IP Precedence Type of Service
DiffServ Code Point (DSCP) IP ECN Extensões DiffServ
DSCP EXP
49
Engenharia de Tráfego em
Redes IP/MPLS
• Desenvolvido para resolver problemas de
congestionamento, otimização de banda e convergência de
rede
53
Engenharia de Tráfego:
MPLS-TE
• Conceito de aplicação de engenharia de tráfego no MPLS,
denominado MPLS-TE (Traffic Engineering)
54
Engenharia de Tráfego:
Reserva de Recursos
• 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:
MPLS-TE
LER A
LER Z
Encontre o R1 R4
caminho mais
curto até R8 com LSR head
end 200 R7
80 Mbps 150
R8
R2
100
50
Path Msg
100
LSR tail
R3 100 Resv Msg
80 end
Túnel
Base de Dados
Topologia TE
R6
R5
LER A LER Z
R1 R5 R6 R7 R8
R2
IP L50 IP L26 L10 IP L26 L12 IP L26 L92 IP L26 L89 IP L26 L65 IP L52
LSP
Túnel
56
Engenharia de Tráfego:
MPLS-TE
LFIB: LFIB: LFIB: rótulos aprendidos pelo LDP
50 -> 26 26 -> 26 50 -> 26
push 10 10 -> 12 pop 12 rótulos do túnel
10.1.1.1/8
57
Restauração em Redes IP/MPLS
R2 R2 R4 SRLG 10
R4 R2-R4
R1 R5 R1 R2-R3
SLRG 20
SRLG 20
SLRG 30 R4-R3
R5
R4-R2
IP/MPLS IP/MPLS
R3 R3 SRLG30
R3-R2
R3-R4
Topologia lógica Topologia Física + Lógica
Malha de túneis Malha de túneis
60
Desafios para a Engenharia de
Tráfego e Restauração
• Estruturada em Rede de Transporte e Rede IP/MPLS sem
integração dos planos de controle
• Hardware proprietário 62
Exemplo de Configuração de
Túneis MPLS
• Ferramenta de Planejamento Cisco MATE
63
Desafios para a Engenharia de
Tráfego e Restauração
• 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
Desacoplamento entre as
Camadas de Rede
LSR LSR
LER L3 Túnel TE (enlaces lógicos)
LER
Enlaces físicos 10GE
N x 10G Enlaces físicos
LSR N x 10G LSR (comprimento de onda)
N x 10G L1 / L2
N x 10G
de 100G
de 100G
L0
de 100G Equipamento L3: roteadores P e PE
de 100G Backbone IP/MPLS
65
Desacoplamento entre as
Camadas de Rede
L0
Planejamento, de 100G
administração, de 100G
operação e Proteções,
configuração restaurações em
complexa: pouca múltiplas camadas:
automação ! desperdício de
recursos !
66
Como Vencer os Desafios ?
• Simplificação da configuração
de túneis e redução de número
de estados nos roteadores de
núcleo
Roteamento por
Segmentos
67
Como Vencer os Desafios ?
• Controle Centralizado
multicamada integrado :
68
Como Vencer os Desafios ?
69
Como Vencer os Desafios ?
70
Solução para os Desafios da
Rede da Operadora
• Introdução
• Experimentação Prática
73
Arquitetura de Redes Definidas
por Software
• 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
74
Arquitetura de Redes Definidas
por Software
Aplicações de Rede
1. Plano de controle e plano de
API aberta Northbound encaminhamento de dados
separados
Plataforma de Controle 2. Controle centralizado da rede
3. Introduz a capacidade de
API aberta Southbound
programação da rede através de APIs
abertas
Aplicações de Rede
Sistema de
Algoritmos Balanceadores
Aprendizado Detecção
de de carga
de MAC de intrusos
Roteamento
(IDS)
Controlador SDN
Rede Tradicional
Tabela de Fluxos
Software
Tabela de Fluxos
do plano de encaminhamento
de dados
Integração vertical:
Adaptado de “Diego Krautz et al,
Plano de controle e de dados Software-Defined Networking:
A Comprehensive Survey”
Implementados no dispositivo de rede 77
Visão da Arquitetura SDN
Completa
• Decomposta em planos e camadas:
Plano de Gerência Aplicações de rede
res de tráfego
Acesso (ACL)
Balanceado-
Roteamento
controle de
Lista de
Linguagens de programação
Aplicação
...
Aplicação
Linguagens baseadas em
virtualização
Plano de Controle Interface Northbound (NBI) Sistema Operacional
Sistema Operacional de Rede de Rede (NOS)
(NOS) e “Hypervisor”
“Hypervisor “
Plano de Dados Interface Southbound (SBI)
Infraestrutura de rede
79
Plano de Dados: Interfaces
Southbound (SBI)
• Separação entre o plano de controle e o plano de
encaminhamento de dados
80
Interfaces Southbound:
NETCONF e YANG
• 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
81
Protocolo NETCONF
Instrumentação Instrumentação
Dispositivo NETCONF Dispositivo NETCONF
82
Protocolo NETCONF
Camada Exemplo
83
Protocolo NETCONF
<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&revision=2012-04-29
</capability>
</capabilities>
<session-id>4<session-id>
</hello>
84
Modelo YANG
Módulos
Gerência Módulos
YANG
de Módulos
YANG
Aplicações YANG
Netconf
86
Modelo YANG
87
Modelo YANG - Exemplo
88
Modelo YANG - Exemplo
89
Interfaces Southbound: BGP-LS
90
Protocolo BGP-LS
Controlador
Controlador SDN
SDN
BGP-LS
Southbound BGP-LS
Interface IGP
IGP Southbound RR
Interface
IGP
Domínio n
(Multiárea
Domínio 1
IS-IS) BGP-LS BGP-LS
(OSPF)
BGP-LS
Domínio 2
(IS-IS) Domínio 1 Domínio 2 Domínio n
(OSPF) (IS-IS) (Multiárea
IS-IS)
91
Protocolo PCEP (Path
Computation Element Protocol)
• Usado para comunicações entre o
PCC (Path Computation Client) e o Arquitetura PCE
93
Tabela de Fluxos OpenFlow
Comunicações
Controle de
Controle de
Sistema
Operacional
de Rede
(NOS) Tabela de
Fluxos
94
Versões do Protocolo OpenFlow
95
Plano de Controle: Arquitetura
de Virtualização
• 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)
96
Arquitetura de Virtualização:
Hypervisor e Orquestrador
VNF1
VNF2
VNF3
Ex. rede IP/MPLS ...
Armazenamento
Rede
WAN (Storage) ...
VM 1 VM 2
Ex.: vswitch
Rede de Rede do Telco Hipervisor
Servidor Ex.: VMWARE, KVM
Acesso Datacenter
Rede Óptica Armazenamento Servidor B
Virtual
VNF3
VNF2 ...
VN1
VM 1 VM 2 ...
Hipervisor
Servidor
99
Arquitetura de Virtualização:
SDN x NFV
• 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
100
Elemento de Computação de
Caminho (PCE)
• 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
TED
PCS
Link-State Data
PCE
PCEP
Sinalização/
Requisição PCC Roteamento
do Serviço
WAN
Encaminhamento
Roteador
Head End
111
Tipos de PCE
112
Tipos de PCE
LSP DB
PCEP
TED PCEP
TED
Stateless Stateful
PCC PCC
113
Stateful PCE
3. Como
2. Acho que
chegar até Y ?
saindo por “A” é o
melhor caminho...
5. A rota é 4. Acho que por
através de B “D” é o melhor
1. Pretendo caminho
chegar até Y, PCE PCE
qual o melhor
caminho ?
8. Rota de
6. Rota de 7. Desejo D até Y
X até B A chegar a Y !
C
X
Ingresso
do tráfego
Egresso
do tráfego
B D Y
116
PCE Antes do SDN
• 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
Interface Northbound: REST
Resposta:
{
Exemplo de uso API REST
"1": [ para o controlador Ryu para
{
´´port_no’’: 1, informar o estado das portas de
´´rx_packets’’: 9,
"tx_packets": 6, um comutador:
"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
}
Interface Northbound: REST
• 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 URI Operação Tipo de
HTTP 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
121
Interface Northbound:
RESTCONF e NETCONF
• 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
122
Plano de Gerenciamento:
Aplicações
• 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 123
Plano de Gerenciamento:
Linguagens de Programação
• APIs para desenvolvedores de aplicação
– REST
– RESTCONF
– RESTful
• Linguagens de programação
– C
– C++
– Java
– Python
124
Roteiro
• Introdução
• Experimentação Prática
130
Benefícios do Roteamento pela
Origem
132
Tipos de 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
• Segmento Local:
– Fora da faixa do SRGB, tem significado local e não pode ser
instalado em outro nó
134
Segmento de Nó
2 caminhos de mesmo custo
(Equal Cost Multipath Routing - ECMP)
A decisão da escolha do caminho
pode depender de restrições
Segmento de Nó
(ex.: latência e banda)
1 2
1 2 16004
16005 16005 16004 16004 5
16005
5 16004
16005
16005 3 4
3 4
16004
Segmento de Adjacência
24021
24025
1 2
24024 5
3 4
136
Segmento Local
Segmento Local
Serviço 1
9001
1 2
3 4
9002
Serviço 2
137
Combinação de Segmentos de
Nó e Adjacência
• Os Segmentos de Nó e Adjacência pode ser combinados
para direcionar o tráfego em qualquer caminho da rede:
16004
16004
24045
24045
Pacote
dest: 5 Pacote
dest: 5
Pacote
dest: 5 1 2
Pacote para o nó 5
Pacote
5 dest: 5
3 4
24045
24045
16004 Pacote
dest: 5
138
SR-Path: Segment Routing Path
1 2 1 2
3 4 3 4
141
Operações com Segmentos
Continue Pop
Nomenclatura Push 16004 16004 16004 16004
16004
Operações MPLS Pop
Push 24045 24045 24045 24045 24045
Pacote FEC dest 5 Pacote Pacote Pacote Pacote
dest: 5 dest: 5 dest: 5 dest: 5 dest: 5
1 2 4 5
16004 24005
Segmento ativo Segmento de Nó Segmento de Adjacência
142
Agrupamento (Bundle) de
Segmentos de Adjacência
• Permite agrupar múltiplos enlaces físicos permitindo o
balanceamento do tráfego
Pop
24245 24245
2 enlaces
físicos
Pop
24045 24045
Pacote
dest: 5
4 5
Pop
24145 24145
Pop
24245 24245
143
Roteamento por Segmentos x
Redes IP/MPLS Legadas
• Comparativo da Arquitetura de Roteamento por Segmentos
com a Arquitetura IP/MPLS
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) IGP IGP + RSVP-TE
em 50 ms
Túneis TE adicionais para Não precisa Precisa
suportar FRR
Otimização de caminho Backup Sim Não
ECMP para criação de túneis TE Sim Não
Estados apenas no Headend do Sim Não, depende do número de nós
TE (complexidade n2 nos pontos
intermediários)
Interoperabilidade com a rede Sim Não se aplica
MPLS tradicional
Projetado para SDN Sim Não
144
Roteamento por Segmentos
com Plano de Dados MPLS
• O Segmento é representado por um rótulo (Label)
145
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
146
Roteamento por Segmentos
com Plano de Dados MPLS
Anuncia via IGP
SID associado ao IP de
Segmento 16004 Loopback
Lo: 1.1.1.4/32
Lo: 1.1.1.1/32 Lo: 1.1.1.2/32 Lo: 1.1.1.3/32 Prefixo-SID: 16004
99.1.2.1 99.2.3.2 99.3.4.3
99.1.2.2 99.2.3.3 99.3.4.4 Rede
Push Swap Pop IP
LER LSR LSR LER
1 2 3 4 “x”
Expl.
16004 16004
Pacote Null
dest: 4 Pacote Pacote Pacote
dest: 4 dest: 4 dest: 4
MP-BGP
LSR LSR
Gi 0 Gi 1 Gi 1
3 4 Gi 0
99.1.3.3 99.3.4.3 99.3.4.4 99.2.4.4 Lo: 1.1.1.2/32
Gi 0 Gi 0
Gi 2 99.1.3.1 99.2.4.2 Gi 2 8
2
7 1
CE 99.1.5.1 99.2.6.2Gi 1 CE
LER Gi 1 99.1.5.5 99.5.6.5 99.5.6.6 LER 10.0.0.0/30
VRF vermelha 99.2.6.6 Prefixo SID 16002
Gi 0 5 6 Gi 0
Gi 1 Gi 1 VRF vermelha
LSR LSR
148
Serviço VPN L3 com
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
151
Roteamento por Segmentos
com Plano de Dados IPv6
• 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
Exemplo de Roteamento por
Segmentos no IPv6
E F G
153
Bloco Global de Roteamento
por Segmentos (SRGB)
• 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
Alocação NÃO Recomendada de
SRGB
Loopback 1.1.1.1/32 Prefixo de Segmento de índice = 1
Lo: 1.1.1.1/32
SRGB
SRGB
16001 Index 1 16001 Index 1 16001 Index 1
... ... ...
23999 Index 7999 533334 23999 Index 7999
541335
...
1.048.575 1.048.575 1.048.575
155
Alocação Recomendada de
SRGB
Loopback 1.1.1.1/32 Prefixo de Segmento de índice = 1
Lo: 1.1.1.1/32
SRGB
SRGB
24000 24000 24000
... ...
...
156
Alocação de Rótulos para o
MPLS e Roteam. Segmentos
157
Gerenciamento dos Segmentos
158
Plano de Controle IGP para
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)
160
Opaque LSA
161
Opaque LSA
164
Opaque LSA (TLV e sub-TLV)
TLV
Sub-TLV
Flag da TLV
Flag da sub-TLV
1002
72
72
Pacote dest: c
ASBR1-A ASBR2-A Pacote dest: c
SID SID
1001 1002
A Área Área Área
1 C
SID Backbone 2
1001
SID
SID 70 1002
B ASBR2-B
ASBR1-B SID 72
SID Anycast
SID 72
SID unique (dentro da área)
168
Propagação de Prefixos entre
Áreas: Prefixo SID Anycast
• Prefixos SID Anyscast – Propagação de prefixos e flags
Flags na Flags na
Área 0 Área 1
16003 16003 1.1.1.1/32 SID 16001 NP=0, E=0 NP=1, E=0
1.1.1.3 1.1.1.3 1.1.1.3
1.1.1.2/32 SID 16002 NP=0, E=0 NP=0, E=0
Área 0 Área 1
ASBR 169
Roteamento por Segmentos
Interligados por uma LAN
• A LAN representa a adjacência entre os nós
R1 SID para R2
LAN
R3
PseudoNó
SID para R3
170
Coexistência com outros
protocolos legados
• 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
• 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
172
MPLS para IP ou
MPLS para MPLS
MPLS Roteamento por Segmentos + LDP IP
Lo: 1.1.1.5/32
1 2 3 4 5
Local/ Out Local/ Out Local/ Out Local/ Out
Label In Label Label In Label Label In Label Label In Label
SRGB
1 2 3 4 5
Local/ Out Local/ Out Local/ Out Local/ Out
Label In Label Label In Label Label In Label Label In Label
SRGB
175
Servidor de Mapeamento
177
Arquitetura do Servidor de
Mapeamento
Calculadora Políticas
de Políticas Ativas
Verificador de
Políticas
políticas
Backup
RIB
locais Procura
Prefixo SID
Entradas de Entrada de
Configuração Mapeamento Mapeamento
local remota Analisador
Políticas Locais LSP/LSA
Políticas Locais
Gerador
Entrada de Mapeamento LSP/LSA
local do Gerenciador Cache Políticas Locais
de Mapeamento
Gerenciador de Mapeamento IGP Cliente de
Mapeamento
Servidor de Mapeamento
178
Interoperabilidade entre
Roteam. Segmentos/LDP
• Modelos de interoperabilidade:
179
Interoperabilidade entre
Roteam. Segmentos/LDP
180
Modelos de Interoperabilidade
Roteam. Segmentos/LDP
• Roteamento por Segmentos para LDP
– Anuncia os prefixos SID na tabela LFIB dos roteadores do
domínio LDP
– Realizado pelo Servidor de Mapeamento
181
Roteamento por Segmentos
para LDP
LDP FIB
SID: 16005 ? LDP 1.1.1.5/32
1.1.1.5/32 Lbl Impl
Lbl 90007 Null IP
Segmento LSP Lo: 1.1.1.5/32
1 2 3 4 5
Domínio SR Domínio LDP
182
1048575 1048575 1048575 1048575
LDP para Roteamento por
Segmentos
LDP LDP SID: 16005
FIB 1.1.1.5/32 1.1.1.5/32
Lbl 90100 Lbl 90007 IP
LSP Segmento Lo: 1.1.1.5/32
1 2 3 4 5
Domínio LDP Domínio SR
Cópia
... ... ... ...
90008 90100 90100 90007 90007 16005 90007 90007
... ... ... ...
Entrada da
Tabela FIB
184
Mecanismo de Proteção TI-LFA
185
LFA-FRR Clássico
Destino
Origem
5
1 2 3
6 7 8
Caminho principal
Caminho clássico LFA FRR
Caminho pós-convergência do IGP
186
LFA-FRR Clássico
Destino
1 2 3
Ciclo
Origem 6 7 8
Caminho principal
Caminho clássico LFA FRR
Caminho pós-convergência do IGP
187
Algoritmo PQ
• 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
188
Algoritmo PQ - Definições
• 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ó
189
Algoritmo PQ – Espaço P e Q
P Space Q Space
P Q
S D
Caminho L
Caminho Principal (L)
TI LFA (caminho pós-convergência)
P Space Q Space
P
S Q D
Caminho L
191
TI-LFA com Roteamento por
Segmentos – Caso 0
• Caso 0: TI LFA com nenhum segmento a partir de P
Pacote dest: Z
A Z Pacote dest: Z
Caminho principal
Origem (S) Caminho Pós-Convergência
R R Destino (D) Segmentos
Prefixo- SID(Z)
1 2 P-Space
Pacote dest: Z
Q-Space
P-Space Extended P-Space
R
5
P=Q
Q-Space
Pacote dest: Z
R R
4 3
192
TI-LFA com Roteamento por
Segmentos – Caso 1
• Caso 1: TI LFA com 1 segmento a partir de P
A Z
Pacote dest: Z
Pacote dest: Z Caminho principal
Origem (S) Caminho Pós-Convergência
R R Destino (D) Segmentos
PrefixoSID(R4) 1 2 P-Space
Prefixo SID(Z) Q-Space
Q-Space
Pacote dest: Z
R Extended P-Space
P-Space 5
P=Q R R Extended
4 3 P-Space
Prefixo SID(Z)
Pacote dest: Z
193
TI-LFA com Roteamento por
Segmentos – Caso 2
• Caso 2: TI LFA com 2 segmentos a partir de P
A Z
Pacote dest: Z
Origem (S)
Pacote dest: Z Caminho principal
Prefixo SID(R4) R R Caminho Pós-Convergência
1 2 Destino (D) Segmentos
adj- SID(R3)
Prefixo- SID(Z) P-Space
Pacote dest: Z Q-Space
R
5 Extended P-Space
P-Space
Q-Space
R R
P 4 3 Q
adj- SID(R3)
Prefixo- SID(Z) Prefixo- SID(Z)
Pacote dest: Z Pacote dest: Z
194
Aplicações do TI-LFA
195
Balanceamento e Proteção com
TI-LFA
Origem
Destino2
Destino 1
8
1 7
2 5
6 Q
P 1000
P
3 4 Q
1000
Métrica padrão: 10
196
Proteção em Redes IP/MPLS
com TI-LFA
Origem Destino
A Z
P-Space
1 2 Q-Space
P-Space Extended P-Space
Segmentos
Q-Space
5
4 3 Extended
P-Space
PQ
SR + LDP:nó 1 e 4
LDP: nós 2,3 e 5
197
Aplicações e Serviços para
Roteamento por Segmentos
• 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)
198
Engenharia de Tráfego com
Roteamento por Segmentos
Aplicação
SDN
Requisição de
Caminho LSP
DB
Stateful PCE
TED
PCEP BGP-LS
Lista de Segmentos: 10,20,30,40
40
Stateful
PCC
10
20 30
30 40
40
20
30
40 199
Engenharia de Tráfego com
Roteamento por Segmentos
• Engenharia de Tráfego com Roteamento por Segmentos
para criação de túneis disjuntos em planos separados
ECMP – Equal Cost MultiPath Routing ECMP – Equal Cost MultiPath Routing
para Plano A+B somente no Plano A
4 saltos, Segmentos {65} 4 saltos, Segmentos {111,65}
A A
SID 111
SID 65 SID 65
Z Z
201
Aplicações e Serviços para
Roteamento por Segmentos
• Controle OAM (Operations, Administration and
Maintainance)
– Uso de segmentos de adjacência para monitorar cada enlace
de rede usado em redes extensas e complexas
202
Controle OAM
9105
9107 9107
9103 9103
9101 9105 9105
9105 9101 9105 9101 9101
9101 9101
9107
9103 B C D
9105
9101 A 9107 9105 H
E F G
9103
9103
9105 9105
9101 9101
203
Automação de “peering”
Controlador SDN
D G
B 1.0.1.2/24 AS 2
AS 1
E AS 4
A 1.0.2.2/24 K
1.0.2.1/24
1.0.3.1/24 AS 3
1.0.3.2/24
C
PE de Egresso (EPE)
F Peers
Sinalização BGP EPE do PE de Egresso para o
Controlador SDN
205
Cadeia de Serviços com
Roteamento por Segmentos
B e C anunciam S1 e S2
como SIDs para as Segmento Local
instâncias de serviço
anexadas S2
A Ingresso
O nó de ingresso
classifica o fluxo e aplica S1
a cadeia de serviço S1, S2
Segmento Local
206
Padronização IETF
207
Padronização IETF
Documento
Grupo de Trabalho Draft Tópicos do Draft
IETF
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- Extensões do OSPF para SR
extensions
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
Extensões de IDR draft-gredler-idr-bgp-ls-segment-routing- Extensões do BGP-LS para SR
Protocolos ext
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- SR em IPv6
header
6MAN Draft-evyncke-6man-segment-routing- SR em IPv6
security
BFD draft-akiya-bfd-seamless-sr BFD (Bidirectional Failure Detection)
para SR
208
Padronização IETF
Documento
Grupo de Trabalho Draft Tópicos do Draft
IETF
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
Casos de Uso
SPRING draft-ietf-spring-segment-routing-msdc Uso massivo de Daatcenters
SPRING draft-ietf-spring-segment-routing-central- Egress PE (Peering)
epe
SPRING draft-filsfils-large-scale-interconnect Rede SR de grande escala
MPLS draft-kumarkini-mpls-spring-lsp-ping LSP ping/trace para SR
209
Roteiro
• Introdução
• Experimentação Prática
212
Ferramenta OSHI
• 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)
• 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
214
Arquitetura do Nó OSHI
Daemon de
encaminhamento IP
Roteamento IP
Roteamento e
Roteamento e (Quagga)
Encaminhamento IP
Encaminhador de
Pacotes
(Rede Linux)
Portas Virtuais
SDN/Switch
IP
OpenFlow
SDN/ Switch SDN
SDN
Switch (Open vSwitch)
OpenFlow
Portas físicas
215
Arquitetura do Nó OSHI
216
Introdução ao Mininet
Switch S1
eth1 eth2
Aplicação Aplicação
h1 eth0 eth0 h2
eth3
10.0.1.11
10.0.1.100
Cliente
218
Experimento 1: Construção de
uma Rede Simples com Mininet
Disponível em
http://www.gta.ufrj.br/~silverio/SRArquivoSBRC2016.htm.
219
Experimento 2: Criação de um
Serviço MPLS com LDP no OSHI
Tarefa 2:
Configurar o serviço
Pseudowire MPLS em
um Backbone IP/MPLS CONTROLADOR
RYU OU FLOODLIGHT
(com PE´s e P´s) legado
(protocolo LDP) com a
ferramenta OSHI
P OSHI
PE OSHI ROTEADOR
ROTEADOR
PE OSHI CE
CE
P OSHI P OSHI
PSEUDOWIRE
220
Experimento 2: Criação de um
Serviço MPLS com LDP no OSHI
Disponível em
http://www.gta.ufrj.br/~silverio/SRArquivoSBRC2016.htm.
221
Experimento 3: Criação de um
Serviço MPLS com SR* no OSHI
Tarefa 3:
Configurar o túnel MPLS
em um Backbone 69
69 23
IP/MPLS (com PE´s e 23 90
P´s) configurando 90 B C
Roteamento por
A 23
Segmentos com a F
ferramenta OSHI
D E
90
SR* - Segment Routing 90
222
Experimento 3: Criação de um
Serviço MPLS com SR* no OSHI
Disponível em
http://www.gta.ufrj.br/~silverio/SRArquivoSBRC2016.htm.
223
Roteiro
• Introdução
• Experimentação Prática
225
Considerações Finais e Direções
Futuras
Controlador • Rota expressa óptica conforme a necessidade do
SR
tráfego
c1
101 102 103 104 105
100
p1 p2 p1 p2
p3 p3
c2
Local/ Actions
Label In
100 Pop,Out p1 Roteadores de Núcleo IP/MPLS
102 Pop, Out p2
103 Out p2
Equipamentos Ópticos
104 Pop, out p3 ROADM (Reconfigurable Add Drop Multiplexer)
105 out p3
... 226
Considerações Finais e Direções
Futuras
• Outras aplicações em desenvolvimento
– Roteamento por Segmentos em Redes “Carrier Ethernet” com
adição de segmentos no quadro ethernet (conceito de
“OmniEthernet”)
227
Considerações Finais e Direções
Futuras
229
Faz tudo !!!
230
Obrigado!