“MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote...

62
PoP-SC/RNP - WTR 2018 “MPLS: Do núcleo da rede a última milha” Rodrigo Pescador Analista de Engenharia de Redes RNP/AmLight Murilo Vetter Analista de TI REMEP-FLN

Transcript of “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote...

Page 1: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

PoP-SC/RNP - WTR 2018

“MPLS: Do núcleo da rede a última milha”

Rodrigo PescadorAnalista de Engenharia de Redes

RNP/AmLight

Murilo VetterAnalista de TIREMEP-FLN

Page 2: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Um pouco sobre a AmLightAmericas Lightpaths Express and Protect

É uma infraestrutura que combina o uso de espectros

ópticos (express) e capacidades contratadas (protect) para

construir um ambiente confiável para o desenvolvimento da educação e

pesquisa colaborando com as comunidades científicas dos Estados Unidos e

América Latina.América Latina.

Áreas de colaboração: Astronomia, Física de alta energia, Biodiversidade,

Ecologia, Ciência de Materiais, Sismologia, Pesquisa da futura Internet,

Pesquisas de UHD – Ultra High Definition vídeo.

Maiores informações:

https://www.amlight.net/?page_id=1223

Page 3: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Um pouco sobre a AmLight

Page 4: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

O que é MPLS?

• O MPLS (Multi Protocol Label Switching), definido pela RFC3031, é uma tecnologia de encaminhamento de pacotesbaseada em rótulos ou labels, que atua entre as camadas 2 e3 do modelo OSI, citado também por alguns como umprotocolo de camada 2,5

Page 5: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Por que e quando usar MPLS• O MPLS foi concebido para melhorar a taxa de encaminhamento de pacotes

devido a limitação no poder de processamento dos hardwares (anos 90)

• Com o advento dos circuitos integrados (ASICs), o roteamento IP ficou bastanteeficiente, sendo que o uso do MPLS somente por “ser mais rápido” não seria maisnecessário

• Porém, o uso do MPLS traz muitas vantagens na operação de um backbone poisoferece a possibilidade de se utilizar serviços de VPN, Engenharia de Tráfego (TE),qualidade de serviço (QoS) e “BGP free core”

• O MPLS é, atualmente, uma das tecnologias mais utilizadas para criação decircuitos virtuais. Sua principal aplicação é a possibilidade de oferecer um serviçode conectividade entre localidades distintas com garantias de qualidade deserviço, principalmente voltado a clientes corporativos

Page 6: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Rede IP tradicional e o MPLS

Em uma rede IP tradicional

• Cada roteador realiza uma pesquisa na tabela de roteamento paradeterminar o próximo salto de um pacote

• Cada roteador da rede toma uma decisão independente dos demais

Na rede MPLSNa rede MPLS

• O primeiro dispositivo pesquisa na tabela de roteamento e:– Encontra o destino final do pacote

– O caminho é pré-determinado entre a origem e o destino

– Roteadores intermediários não necessitam fazer uma nova pesquisa na tabelade roteamento para encaminhar o pacote

– No último roteador, a label MPLS é removida e o pacote é entregue viaroteamento IP tradicional

Page 7: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Como é o roteamento de pacotes utilizando o protocolo BGP sem o uso de MPLS?

Page 8: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Como é o roteamento de pacotes utilizando o protocolo BGP com o uso de MPLS (BGP free core)?

Page 9: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Serviços L2 entre unidades sem o uso de MPLS

Page 10: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Serviços L2 entre unidades com o uso de MPLS

Page 11: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Labels• Tamanho: 4 bytes

• Significância local

• Inserida entre o cabeçalho da camada de enlace e de rede

EXP: CoS – Class of Service

S (Stack): Identifica o último label da pilha (S = 1)

TTL – Time to Live:Time to live do pacote MPLS. É o mesmo que o TTL do pacote IP

Page 12: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Empilhamento de labels

• Pode haver o empilhamento delabels se uma VPN ou MPLS-TEestiverem também sendocarregados no pacote

• Um roteador MPLS analisa sempre• Um roteador MPLS analisa sempreo label que está no topo da pilha(isto é, o que está mais externo), afim de tomar sua decisão deencaminhamento

• Os demais labels são consideradosapenas quando o cabeçalho dotopo é removido

Page 13: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Visualizando um pacote MPLS

Page 14: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Valores dos labels MPLS (Huawei)

Valor Descrição

0 – 15 Reservado – Não disponível para alocação

16 – 1023 Compartilhado entre LSPs estáticos e CR-LSPs

>= 1024 Protocolos dinâmicos (LDP, RSVP-TE, MP-BGP)

Valor Descrição RFC

0 IPv4 Explicit NULL Label 30320 IPv4 Explicit NULL Label 3032

1 Router Alert Label 3032

2 IPv6 Explicit NULL Label 3032

3 Implicit NULL Label 3032

4-6 Unassigned

7 Entropy Label Indicator (ELI) 6790

8-12 Unassigned

13 GAL Label 5586

14 OAM Alert Label 3429

15 Extension Label 7274

Page 15: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Operações básicas no encaminhamento de pacotes na rede MPLS

• Push– Quando um pacote IP ingressa na

rede MPLS, o nó de entradaadiciona uma label entre ocabeçalho camada 2 e camada 3

• Swap• Swap– Quando um pacote IP é

transferido de um nó para outroexiste a troca de label de acordocom as definições do plano deencaminhamento

• Pop– Quando um pacote sai da rede

MPLS, o label é removido e opacote IP original é entregue nodestino

Page 16: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Arquitetura básica do MPLS

• Plano de controle• Plano de controle

Gera e mantêm as informações de roteamento e labels

– RIB: gerado pelos protocolos de roteamento IP

– LDP: aloca as labels, cria a LIB e estabelece os LSPs

– LIB: gerado pelo LDP, gerencia as labels

• Plano de encaminhamento

Encaminha os pacotes IP e MPLS

– FIB: baseada na tabela RIB, utilizada para encaminhar os pacotes IP

– LFIB: baseada nas informações LDP, encaminha pacotes MPLS (indica para onde enviar e com qual label)

Page 17: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Tipos de roteadores

• LER – label edge router (também chamado PE)

– Roteador que encapsula o pacote dentro da rede MPLS

– Insere/remove o cabeçalho MPLS que contém os LABEL

– Roteador que escolhe o caminho do pacote

– Ficam na borda da rede MPLS

– Tipicamente os serviços são terminados nestes nós (L2VPN, VPLS, Internet, etc)

• LSR – label switching router (também chamado P)

– Roteador que só faz o encaminhamento de pacotes usando unicamente informações de LABEL

– Comum em grandes operadoras

Page 18: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Inserção e remoção da label no LER

Page 19: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

FEC – Forwarding Equivalence Class

• Conjunto de pacotes que possuem as mesmas características– Encaminhados para o mesmo next-hop

– Mesma interface de saída

– Mesmo tratamento (fila, por exemplo)

As regras de mapeamento de labels nas FECs podem levar em conta diversos campos

do pacote, como IP de origem, IP de destino, tipo de protocolo, byte DS (DSCP) ou,

até mesmo, as portas do protocolo de transporte

Em uma rede MPLS, a FEC é determinada

somente uma vez, no momento em que

pacote ingressa em um LSP

Page 20: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

O LSP (Label Switched Path) é o caminho por onde os pacotes irão passar numa

rede MPLS. No momento em que um pacote entra numa rede MPLS, este é

associado a uma classe de equivalência (FEC) e assim é criado um LSP relacionado

a esta FEC

LSP - Label Switched Path

• Cada enlace de roteador usado por um caminho específico é identificado por umlabel, de forma que um LSP é definido por uma sequência de labels

• A configuração dos LSPs pode ser feita de forma manual ou automática

Page 21: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

LSP Dinâmicos

• LDP - Label Distribution Protocol– Responsável pela distribuição das labels no domínio MPLS

– Cria um caminho LSP em cada nó da rede de acordo com as informações da topologia do roteamento IGP

Processo de estabelecimento de uma

sessão LDP entre neighbors.

Page 22: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

LSP Dinâmicos

• RSVP-TE - Resource Reservation Protocol Traffic Engineering– Usado para construir um caminho LSP com reserva de recursos, conhecidos

como constraint-based LSP (CR-LSP)

• MP-BGP - Multiprotocol BGP– Extensão do BGP que permite realizar alocação de labels VPN MPLS

– MP-BGP AD permite o uso de “descoberta automática de membros” para o estabelecimento de VPNs

Page 23: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Encaminhamento MPLS

1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a label Z ao pacote, encaminhando-o em seguida

2. O roteador intermediário troca a label Z por Y

3. O penúltimo roteador recebe o pacote Y e remove esta label (PHP). O pacote é então encaminhado sem último nó sem qualquer label

4. O roteador de saída encaminha o pacote IP puro ao destino 4.4.4.2

Page 24: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

PHP – Penultimate Hop Popping

• PHP é uma técnica para remover o label de um pacoteum hop antes de seu destino final

• Esta técnica economiza uma consulta adicional no ultimosalto (LER) em um LSPsalto (LER) em um LSP

• O label “implicit-null” tem o valor 3 (reservado)

• O penúltimo roteador remove o label de qualquer pacotepara o qual este receba um “implicit-null” paradeterminado prefixo

Page 25: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Encaminhamento sem o uso de PHP• Explicit-null

• A label é removida somente no último roteador do LSP• Último LER egresso deve fazer duas consultas: LFIB e FIB

Page 26: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

PHP – Aplicação da Técnica• Implicit-null

• A label é removida um hop antes (penúltimo) de seu destino final• Último LER faz somente uma consulta na tabela de roteamento

Page 27: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Tabelas do MPLS

No MPLS o tipo de tabela pode mudar de acordo com o papel que o roteador desempenha na rede: LER de ingresso, LSR ou LER de egresso

• NHLFE (Next Hop Label Forwarding Entry)

– A mais importante, presente em todos os roteadores MPLS

– Define um conjunto de ações no formato:

• [Ação sobre o LABEL] x [Ação de Encaminhamento]

POP/PUSH/CHANGE NEXT HOP [ Caso seja o próprio roteador, defino como SELF]

Page 28: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Tabelas do MPLS

• FEC-to-NHLFE Map (FTN)

– Presente no roteador LER de ingresso (origem)

– Redireciona pacotes ainda sem labels para uma entrada específica do NHLFE baseado na FEC

• Incoming Label Map (ILM)

– Presente nos roteadores LSR e LER de egresso (destino)

– Indica o que fazer com pacotes que já possuem labels, apontando para a NHLFE

Page 29: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Encaminhamento MPLS (detalhes)

Page 30: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Laboratório Dia 1

Page 31: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Aplicações com MPLS

• MPLS VPN

– L2VC

– L3VPN

– VPLS– VPLS

• MPLS-TE

• MPLS 6PE

Page 32: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Aplicações com MPLS

• MPLS VPN (L2VPN, L3VPN, VPLS)– CE (Customer Edge): equipamento do cliente

– PE (Provider Edge): equipamento de borda da operadoraoperadora

– P (Provider): equipamento de backbone da operadora

Page 33: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Aplicações com MPLS

• MPLS-TE– Pode reservar recursos na rede para garantir a qualidade de

serviço ou melhorar a utilização de enlaces

– Pode implementar recursos que otimizam e melhoram a convergência da rede (FRR)convergência da rede (FRR)

Page 34: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Aplicações com MPLS

• MPLS 6PE– Possibilita o transporte do protocolo IPv6 em um backbone

MPLS IPv4, através do protocolo MP-BGP

Page 35: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

TTL propagation• O roteador MPLS copia o valor de TTL do pacote IP para o MPLS

• Devido a esta “propagação”, é possível visualizar todos os hops da rede através do comando tracerouce

R1# traceroute 10.0.56.6Tracing the route to 10.0.56.6 Tracing the route to 10.0.56.6 1 10.0.12.2 28 msec 36 msec 12 msec2 10.0.23.3 84 msec 28 msec 68 msec3 10.0.34.4 68 msec 68 msec 68 msec4 10.0.45.5 68 msec 76 msec 60 msec5 10.0.56.6 60 msec * 68 msec

Page 36: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

TTL propagation• É possível desabilitar a opção de “propagação” do TTL entre o pacote IP e o MPLS

• O TTL do pacote MPLS é calculado independente do TTL do pacote IP, então o TTL do pacote IP fica intacto ao longo do LSP

R1# traceroute 10.0.56.6Tracing the route to 10.0.56.6 1 10.0.12.2 16 msec 12 msec 12 msec2 10.0.45.5 60 msec 60 msec 60 msec3 10.0.56.6 60 msec * 52 msec

Page 37: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

O cuidado com o MTUÉ importante observar o valor de MTU das interfaces dos equipamentos para

evitar que serviços transportados pelo MPLS sofram degradação.

• L3VPN (1522, sem contar o FCS)

• L2VPN (1540 porta acesso e 1544 porta trunk)

Boa prática: Em todas as interfaces de backbone, habilitar jumbo frame.

Page 38: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

O ID do roteador na rede MPLSInterface Loopback e LDP Router ID• O uso de uma interface loopback garante que seu endereço IP estará alcançável

através de diversos caminhos em um roteador, através do IGP, se este for o caso

• Este endereço da interface loopback será utilizado em todo o domínio MPLS com afinalidade de identificar o roteador e estabelecer os serviços com os demais nós darede

Como o LDP Router ID é selecionado pelo roteador (Cisco)?

1. O roteador verifica as interfaces que estão operacionais

2. Se alguma destas interfaces é loopback, então seleciona a de maior endereço

3. Se não há interfaces loopback, então o endereço o maior endereço em qualquerinterface é selecionado

É importante garantir que o endereço selecionado como LDP router ID seja alcançado

pelos demais nós da rede

Page 39: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Engenharia de Tráfego (MPLS-TE)• Roteamento IP tradicional

– O menor caminho será escolhido para encaminhar todo o tráfego

– Por padrão, o caminho MPLS (LSP) também irá escolher o menor caminho IGP

• MPLS-TE

– É possível utilizar os diversos caminhos disponíveis na rede de forma mais inteligente, distribuindo o tráfego entre eles

Page 40: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Engenharia de Tráfego (MPLS-TE)• LSP

– Em um LSP, o tráfego é encaminhado de acordo com as labelsassociadas aos pacotes no momento que ingressam no domínio MPLS

• MPLS-TE– O túnel MPLS-TE é a associação de diversos LSPs que formam um túnel – O túnel MPLS-TE é a associação de diversos LSPs que formam um túnel

virtual

Page 41: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

OSPF Opaque LSA

Page 42: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Engenharia de Tráfego (MPLS-TE)

• Possibilidades e benefícios ao usar MPLS-TE

– FRR e link/node failure• Em caso de falha em um nó ou enlace, possibilita a proteção e

comutação de tráfego muito rapidamente, minimizando a perdade pacotesde pacotes

Page 43: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Engenharia de Tráfego (MPLS-TE)

• Possibilidades e benefícios ao usar MPLS-TE

– Melhor utilização dos enlaces• Possibilita que enlaces até então ociosos e só utilizados

como redundância possam ser usados em conjunto com osdemaisdemais

Page 44: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Engenharia de Tráfego (MPLS-TE)

• Importando o tráfego para o túnel– Rotas estáticas

– Tunnel policy

– Auto routes (IGP shortcut ou forwarding adjacency)– Auto routes (IGP shortcut ou forwarding adjacency)

Page 45: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Troubleshooting básico: Comandos

• OSPFv2/OSPFv3

Page 46: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Troubleshooting básico: Comandos

• Tabela de rotas

Page 47: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Troubleshooting básico: Comandos

• Estado das sessões LDP

Page 48: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Troubleshooting básico: Comandos

• Caminhos LSP

Page 49: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Troubleshooting básico: Comandos

• Conectividade LSP

Page 50: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Troubleshooting básico: Causas

• Sessão LDP down – causas comuns– A interface onde a sessão LDP é estabelecida está down

– Comando “undo mpls”, “undo mpls ldp” foram aplicados no equipamento

– Rota inexistente

Keepalive LDP expirou– Keepalive LDP expirou

– Hello LDP expirou

Page 51: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Troubleshooting básico: Causas

• LDP LSP down – causas comuns– A rota para o LSR ficou indisponível

– As sessões LDP ficaram indisponíveis

– Recursos de memória ou labels insuficientes

– Política ou ACL pode estar aplicadaPolítica ou ACL pode estar aplicada

Page 52: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Troubleshooting básico: Causas

• L2VC não é estabelecido – causas comuns– O encapsulamento do VC é diferente nas duas pontas

– O MTU do VC é diferente nas duas pontas

– O ID do VC é diferente nas duas pontas

– A configuração de control-word é diferente nas duas pontasA configuração de control-word é diferente nas duas pontas

– A Sessão LDP não está operacional

– A interface AC não está UP localmente ou remotamente

Page 53: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Monitoramento e gerênciaMétricas possíveis de serem monitoradas

• Uptime

• Temperatura

• Memória

• CPU

• Potência (Watts) em uso e disponível das fontes de alimentação

• Potência dos transceivers

• Número de prefixos IPv4 e IPv6

• Adjacências OSPF• Adjacências OSPF

• Estado dos circuitos L2VC

• Estado das sessões LDP

• Estado das fontes de alimentação

Page 54: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Monitoramento e gerência (NAGIOS)

• Número de MPLS L2VC criados:

### ARQUIVO DE CONFIGURAÇÃO DO SERVIÇO:

define command {command_name check_snmp_v3_l2vc_contador_SW31command_line /usr/local/nagios/tools/snmp/check_snmp_l2vc_contador.sh

$HOSTADDRESS$ "$_HOSTSNMPV3_OPT$" $ARG1$$HOSTADDRESS$ "$_HOSTSNMPV3_OPT$" $ARG1$}

define service {use generic-servicehost_name REMEP-SW31service_description MPLS - L2VC CRIADOScheck_command check_snmp_v3_l2vc_contador_SW31!0notifications_enabled 1

}

Page 55: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Monitoramento e gerência (NAGIOS)

• Número de MPLS L2VC criados:

### SCRIPT: check_snmp_l2vc_contador.sh

#!/bin/bash#PoP-SC

SNMP=/usr/bin/snmpgetOIDOPER='1.3.6.1.4.1.2011.5.25.119.8.7.'OIDOPER='1.3.6.1.4.1.2011.5.25.119.8.7.'

if [ "$#" -eq 0 ];then

echo "SNMP Argumentos não foram passados!"fi

HOST=$1SNMPOPS=$2SNMP_INT=$3

SNMPREM=`$SNMP $SNMPOPS $HOST $OIDOPER$SNMP_INT | awk '{print $4}' | tr '\"\' ' ' 2>/dev/null | awk '{print $1}'`

if [[ $SNMPREM =~ ^[0-9][0-9]*$ ]];then

echo "OK: L2VC - Quantidade: $SNMPREM | l2vccontador=$SNMPREM "exit 0

elseecho "UNKNOWN"exit 3

fi

Page 56: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Monitoramento e gerência (NAGIOS)

• MPLS L2VC LSP:

### ARQUIVO DE CONFIGURAÇÃO DO SERVIÇO:

define command {command_name check_snmp_v3_l2vc_SW31command_line /usr/local/nagios/tools/snmp/check_snmp_l2vc.sh

$HOSTADDRESS$ "$_HOSTSNMPV3_OPT$" $ARG1$$HOSTADDRESS$ "$_HOSTSNMPV3_OPT$" $ARG1$}

define service {use generic-servicehost_name REMEP-SW31service_description MPLS - L2VC VC2035 - SENAI CTAI [SW31-

UFSC - SW32-UDESC]check_command check_snmp_v3_l2vc_SW31!2035.4notifications_enabled 1

}

Page 57: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Monitoramento e gerência (NAGIOS)

• MPLS L2VC LSP:

### SCRIPT: check_snmp_l2vc.sh

#!/bin/bash#PoP-SC

SNMP=/usr/bin/snmpgetOIDOPER='1.3.6.1.4.1.2011.5.25.119.4.1.1.1.1.5.'

if [ "$#" -eq 0 ];then

echo "SNMP Argumentos não foram passados!"fi

HOST=$1SNMPOPS=$2SNMP_INT=$3

SNMPREM=`$SNMP $SNMPOPS $HOST $OIDOPER$SNMP_INT | awk '{print $4}' | tr '\"\' ' ' 2>/dev/null | awk '{print $1}'`

if [[ $SNMPREM =~ ^[1-4]$ ]];then

OIDPOS='1.3.6.1.4.1.2011.5.25.119.4.1.1.1.1.28.‘

SNMPTIME=`$SNMP $SNMPOPS $HOST $OIDPOS$SNMP_INT | awk '{print $4}' | tr '\"\' ' ' 2>/dev/null | awk '{print $1}'`

#CONVERTE SEG. PARA DIAS e HORASUPTIME_DIAS=`echo "$SNMPTIME/(60*60*24) " | bc -l `UPTIME_HORAS=`echo "$SNMPTIME/(60*60) " | bc -l `

Page 58: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Monitoramento e gerência (NAGIOS)• MPLS L2VC LSP:

### SCRIPT: check_snmp_l2vc.sh [CONTINUAÇÃO]

if (( $(echo "$UPTIME_DIAS >= 1" | bc -l ) ))then

UPTIME_DIAS=`echo $UPTIME_DIAS | awk -F\. '{ print $1}' `else

UPTIME_DIAS=0fi

if (( $(echo "$UPTIME_HORAS >= 1" | bc -l ) ))then

UPTIME_HORAS=`echo $UPTIME_HORAS | awk -F\. '{ print $1}' `else

UPTIME_HORAS=0fi

if [ $SNMPREM -eq 1 ];then

echo "OK: L2VC {Status UP, Uptime: $UPTIME_DIAS dias ou $UPTIME_HORAS horas } |l2vcstatus=$SNMPREM , uptime_dias=$UPTIME_DIAS , uptime_horas=$UPTIME_HORAS"

exit 0elif [ $SNMPREM -eq 2 ];then

echo "CRITICAL: L2VC Status DOWN | l2vcstatus=$SNMPREM"exit 2

elif [ $SNMPREM -eq 3 ];then

echo "WARNING: L2VC Status PLUGOUT | l2vcstatus=$SNMPREM"exit 1

elif [ $SNMPREM -eq 4 ];then

echo "WARNING: L2VC Status BACKUP | l2vcstatus=$SNMPREM"exit 1

elseecho "UNKNOWN"exit 3

fifi

Page 59: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Monitoramento e gerência (NAGIOS)

• MPLS LDP:

### ARQUIVO DE CONFIGURAÇÃO DO SERVIÇO:

define command {command_name check_snmp_v3_mpls_ldp_SW31command_line /usr/local/nagios/tools/snmp/check_snmp_mpls_ldp.sh

$HOSTADDRESS$ "$_HOSTSNMPV3_OPT$" $ARG1$$HOSTADDRESS$ "$_HOSTSNMPV3_OPT$" $ARG1$}

define service {use generic-servicehost_name REMEP-SW31service_description MPLS - LDP [SW31-UFSC - SW32-UDESC]check_command

check_snmp_v3_mpls_ldp_SW31!200.237.195.32.0.0notifications_enabled 1

}

Page 60: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Monitoramento e gerência (NAGIOS)

• MPLS LDP:

### SCRIPT: check_snmp_mpls_ldp.sh

#!/bin/bash#PoP-SC

SNMP=/usr/bin/snmpgetOIDOPER='1.3.6.1.4.1.2011.5.25.143.1.8.1.4.'

if [ "$#" -eq 0 ]; thenecho "SNMP Argumentos não foram passados!"

fi

HOST=$1SNMPOPS=$2SNMP_INT=$3SNMPREM=`$SNMP $SNMPOPS $HOST $OIDOPER$SNMP_INT | awk '{print $4}' | tr '\"\' ' ' 2>/dev/null | awk '{print $1}'`

if [[ $SNMPREM == "Operational" ]]; thenecho "OK: MPLS-LDP status - $SNMPREM | LDPSTATUS=1"exit 0

elseif [[ $SNMPREM == "Nonexistent" || $SNMPREM == "Initialized" || $SNMPREM == "OpenRec" ||

$SNMPREM == "OpenSent" ]]; thenecho "CRITICAL: MPLS-LDP status - $SNMPREM | LDPSTATUS=0"exit 2

fiecho "ERRO ao consultar via SNMP | LDPSTATUS=0"exit 3

fi

Page 61: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Laboratório Dia 2

Page 62: “MPLS: Do núcleo da rede a última milha” - RNP · 1. O roteador de ingresso recebe o pacote IP destinado a 4.4.4.2 e adiciona a labelZao pacote, encaminhando-o em seguida 2.

Referências• Huawei – Support

http://support.huawei.com• Multiprotocol Label Switching (MPLS)

https://www.cisco.com/c/en/us/products/ios-nx-os-software/multiprotocol-label-switching-mpls/index.html

• MPLS – Multi-Protocol LABEL Switchinghttps://www.ppgia.pucpr.br/~jamhour/Pessoal/Mestrado/TARC/MPLS.pdfhttps://www.ppgia.pucpr.br/~jamhour/Pessoal/Mestrado/TARC/MPLS.pdf

• What Is PHP (Penultimate Hop Popping)http://www.mplsvpn.info/2008/11/what-is-php-penultimate-hop-popping.html

• MPLS - Penultimate Hop Poppinghttp://packet-lab.com/main/service-provider/ccip/item/89-mpls-penultimate-hop-popping.html

• MPLS Architecturehttp://www.informit.com/articles/article.aspx?p=167856