Top Banner
MPLS DiffServ , Extensões TE em IGP e MPLS VPN com BGP Edgard Jamhour
39

MPLS DiffServ, Extensões TE em IGP e MPLS VPN com BGP Edgard Jamhour.

Apr 17, 2015

Download

Documents

Internet User
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: MPLS DiffServ, Extensões TE em IGP e MPLS VPN com BGP Edgard Jamhour.

MPLS DiffServ , Extensões TE em IGPe MPLS VPN com BGP

Edgard Jamhour

Page 2: MPLS DiffServ, Extensões TE em IGP e MPLS VPN com BGP Edgard Jamhour.

Necessidade de integração DiffServ MPLS

• A RFC 3564 discute cenários que não podem ser tratados aplicado-se soluções baseadas exclusivamente em MPLS ou DiffServ.– a) limitar a proporção de uma dada classe de tráfego em um

enlace• exemplo: rede compartilhada com voz e dados

• princípio: a fila de voz deve ser limitada, ou seja, a quantidade de tráfego de voz por enlace deve ser limitada

– b) manter uma proporção relativa de tráfego em todos enlaces• exemplo: a rede deve manter a política de escalonamento mesmo em

caso de falhas

• princípio: configurar todos os enlaces com as mesmas políticas de escalonamento e manter uma proporção relativa de tráfego

– c) serviços com garantia de banda• exemplo: rede compartilhada com AF e BE

• princípio: limitar a proporçao de tráfego AF nos enlaces

Page 3: MPLS DiffServ, Extensões TE em IGP e MPLS VPN com BGP Edgard Jamhour.

Exemplo

• Em condições normais, voz trafega por A-C-D• Em caso de falha, o tráfego seria roteado para ACGD

– CG não atende os requisitos de VoIP se o tráfego for misturado– Solução MPLS: rotear por ACEFD– Solução DiffServ MPLS: alocar VoIP e dados em filas distintas

Page 4: MPLS DiffServ, Extensões TE em IGP e MPLS VPN com BGP Edgard Jamhour.

DiffServ MPLS

• RFC 3270 descreve os mecanismos para o suporte de MPLS em redes DiffServ

• Problema:– A decisão de rota dos LSR (Label-Switching Routers) é baseada

apenas nos Labels MPLS– Como tratar tráfegos com PHB distintos (e.g., tempo real ou banda

média) em um mesmo caminho MPLS

• Proposta:– 3 bits experimentais no cabeçalho MPLS para mapear os 64

valores possíveis do DSCP

Page 5: MPLS DiffServ, Extensões TE em IGP e MPLS VPN com BGP Edgard Jamhour.

Estratégias de Mapeamento

• Para redes que utilizam menos de 8 PHBs– O PHB é inferido a partir dos bits EXP = E-LSP– Esses bits são configurados pelo administrador

• Um único E-LSP pode transportar o tráfego de múltiplos PHBs

Page 6: MPLS DiffServ, Extensões TE em IGP e MPLS VPN com BGP Edgard Jamhour.

Estratégias de Mapeamento

• Para redes que utilizam mais de 8 PHBs– O Label determina a classe do PHB– Os bits EXP determinam a prioridade de descarte

• Um único L-LSP transporta tráfego de um único PHB, ou de múltiplos PHBs com o mesma política de escalonamento

Page 7: MPLS DiffServ, Extensões TE em IGP e MPLS VPN com BGP Edgard Jamhour.

Comparação

E-LSP L-LSP

PHB determinado pelos bits EXP PHB determinado pelo label ou pelo label + bits EXP

Até 8 PHBs em um mesmo LSP Um PHB por LSP ou múltiplos PBHs com mesmo escalonamento e níveis de drop distintos

Uso conservador de labels: labels são criados apenas pelas necessidades de roteamento

Uso intensivo de labels pois eles também afetam os PHBs

A atribuição de PHBs independem da sinalização MPLS

Os PHBs são definidos juntos com a sinalização MPLS

Até 8 PHBs na rede como um todo Número ilimitado de PHBs na rede

Page 8: MPLS DiffServ, Extensões TE em IGP e MPLS VPN com BGP Edgard Jamhour.

Priorização de LSP

• MPLS define até 8 níveis de prioridade para os LSPs– 0 melhor– 7 pior

• Cada LSP possui duas prioridades associadas– setup priority:

• prioridade durante o processo de criação de um novo LSP

– hold priority• prioridade para manutenção de um LSP já criado

• Um LSP com setup priority superior, pode, se necessário, tomar recursos de LSP com hold priority inferior para permitir o seu estabelecimento

Page 9: MPLS DiffServ, Extensões TE em IGP e MPLS VPN com BGP Edgard Jamhour.

Vantagens do Modelo de Prioridade

• O modelo baseado em prioridades permite:– que LSP menos importantes reservem recursos sem prejuízo dos

LSPs mais importantes– que os LSP importantes sempre sejam criados nos melhores

caminhos independentemente das reservas existentes– que em caso de falha de enlace, os LSP mais importantes tenham

maior chance de encontrar caminhos alternativos

• Além da necessidade de banda, os caminhos podem ser sujeitos as seguintes restrições:– atributos administrativos (“cores”) dos enlaces que o LSP pode

atravessar• e.g. enlaces com baixa latência

– número máximo de saltos para o caminho– outras restrições

Page 10: MPLS DiffServ, Extensões TE em IGP e MPLS VPN com BGP Edgard Jamhour.

Extensões de TE

• Foram propostas extensões nos protocolos de estado de enlace IS-IS e OSPF para suportar a distribuição desses atributos junto com as informações de roteamento

• Essas extensões são denominadas TE extensions– Smit H., Li T., IS-IS extensions for Traffic Engineering - draft-ietf-

isis-traffic-05.txt– Katz D. Yeung D., Traffic Engineering Extensions to OSPF - draft-

katz-yeung-ospf-traffic-10.txt

• Quando as informações adicionais de estado de enlaces estão disponíveis, o algorítmo contrained SPF pode ser utilizado– CSPF - Constrained Shortest Path First

• elimina os enlaces que não satisfazem as restrições

Page 11: MPLS DiffServ, Extensões TE em IGP e MPLS VPN com BGP Edgard Jamhour.

Exemplo

• O caminho A-C é criado primeiro• Para o caminho EC, todos os enlaces com menos de 100

Mbps disponíveis são eliminados (pruned)• A sinalização MPLS ocorre para o caminho possível

Page 12: MPLS DiffServ, Extensões TE em IGP e MPLS VPN com BGP Edgard Jamhour.

BGP: Border Gateway Protocol

• Protocolo de roteamento por vetor de caminho– Versão 4: RFC 1771

• Motivação– Segmentar a Internet em domínios (ASs) administrados

independentemente– Eliminar a necessidade de divulgar todas as rotas entre

ASs distintos.

• Características:– Protocolo transportado por TCP– Cabeçalho Padrão seguido de 5 tipos de mensagem

distintos.

Page 13: MPLS DiffServ, Extensões TE em IGP e MPLS VPN com BGP Edgard Jamhour.

Mensagens BGP

• Open (Tipo 1)– inicia uma sessão entre um par de roteadores BGP– negocia recursos opcionais do BGP

• Update (Tipo 2)– anuncia informações de roteamento de um BGP para outro

• Notification (Tipo 3)– usada para indicar problemas com as mensagens Open ou

Update

• KeepAlive (Tipo 4)– utilizada para verificar se o parceiro está ativo

• Route-Refresh (Tipo 5)– requisita que um roteador BGP reanuncie todas as suas rotas

Page 14: MPLS DiffServ, Extensões TE em IGP e MPLS VPN com BGP Edgard Jamhour.

Cabeçalho BGP

• Marcação (16 bytes)– campo obsoleto, não é mais utilizado (preenchido com 0xff)

• Tamanho (2 bytes)– máximo 4096 bytes

• Tipo da mensagem (1 byte):– 5 tipos

Marcador

Marcador (cont.)

Byte 1 Byte 2 Byte 3 Byte 4

Marcador (cont.)

Tamanho da Mensagem

Marcador (cont.)

Tipo da Mensagem Versão (4)

Page 15: MPLS DiffServ, Extensões TE em IGP e MPLS VPN com BGP Edgard Jamhour.

Sessão BGP

• Speaker BGP– roteador que pode enviar e receber mensagens BGP

• Parceiros BGP– roteadores BGP com conexões TCP ponto-a-ponto estabelecidas– Porta TCP: 179

open

open ou notification

update

update

Page 16: MPLS DiffServ, Extensões TE em IGP e MPLS VPN com BGP Edgard Jamhour.

Mensagens BGP: Open

• Identificador de AS– número de 16 bits: e.g. 65033– AS Privado: 64512 a 65535

• Tempo de Suspensão:– Tempo que o roteador espera (em segundos) sem keep alive, antes de considerar

a sessão como morta– Keep Alive (30 s) = 1/3 do tempo de suspensão ( 90 s)

• Identificador de BGP– Endereço IP da interface do roteador

• Parâmetros Opcionais– Formato TLV (e.g. autenticação e capacidades adicionais - AS 4 bytes)

ID AS Tempo de Suspensão

Identificador BGP

Tamanho Opcoes Parâmetros Opcionais

Parâmetros Opcionais

Page 17: MPLS DiffServ, Extensões TE em IGP e MPLS VPN com BGP Edgard Jamhour.

Mensagem BGP: Update

• A mensagem de update permite adicionar ou remover novas rotas.• Ela é composta de 3 seções:

– Rotas Retiradas (Unfeasible Routes)• e.g. 192.168.1.0/24, 10.0.0.0/8, etc.

– Atributos do Caminho• atributos comuns a todas as rotas anunciadas

– Rotas Anunciadas (NLRI)• e.g. 200.1.0.0/16

Tamanho Rotas Retiradas Info. Rotas Retiradas

Rotas Retiradas

Tamanho do Atributos do Caminho Atributos Caminho

Informação de Alcance da Camada de Rede (NLRI)

Atributos Caminho

Page 18: MPLS DiffServ, Extensões TE em IGP e MPLS VPN com BGP Edgard Jamhour.

Atributos BGP

• AS-PATH– seqüência completa de ASs até o destino anunciado

– usado para detectar loops

• NEXT-HOP– endereço do roteador BGP que corresponde ao primeiro salto do caminho

• LOCAL-PREFERENCE– determina o melhor caminho para o tráfego de saída

– maior local-preference vence (default 100)

• MULTI-EXIT DESCRIMINATOR (EXIT)– melhor caminho para o tráfego entrante

• ORIGIN– Origem do Caminho: IGP, EGP ou incomplete

• COMMUNITIES– Comunidades aos quais as rotas anunciadas pertencem

Page 19: MPLS DiffServ, Extensões TE em IGP e MPLS VPN com BGP Edgard Jamhour.

AS 5AS 4

Confederação BGP

• Grandes redes podem ser divididas em vários AS confederados.

• Um AS confederado é visto como um simples AS pelos demais ASs

AS 1 AS 2

AS 3

e-BGP

i-BGP

Page 20: MPLS DiffServ, Extensões TE em IGP e MPLS VPN com BGP Edgard Jamhour.

Comunidades BGP

• No BGP rotas podem ser agrupadas em comunidades (através da seção path da mensagem update)– comunidades permitem definir policies para exportação de rotas

– o significado da comunidade é local ao AS

• Quatro bytes são utilizados: 2 bytes AS: 2 bytes Valor– exemplo: 65033:500 (comunidade 500 do AS 65033)

• As seguintes comunidades são padronizadas:– internet (0)

– no-export (0xFFFFFF01)• as rotas são anunciadas apenas aos peers que são parte da mesma

confederação BGP

– no-advertise (0xFFFFFF02)• a rota não é anunciada para nenhum BGP peers

– local-AS (0xFFFFFF03)• a rota não é anunciada para nenhum BGP peer externo, mesmo que

confederado

Page 21: MPLS DiffServ, Extensões TE em IGP e MPLS VPN com BGP Edgard Jamhour.

Políticas BGP

• As políticas BGP permitem controlar de maneira seletiva quais rotas serão recebidas e propagadas para outros vizinhos.

Page 22: MPLS DiffServ, Extensões TE em IGP e MPLS VPN com BGP Edgard Jamhour.

IXP: Internet Exchange Point

• Um IXP (ou PTT: Ponto de Troca de Tráfego) permite a interconexão direta de vários ASs, minimizando o número de saltos

• Atualmente, a tecnologia mais utilizada para implementar IXP é o Ethernet.

• Em muitos países a manutenção dos IXP é subsidiada por órgãos públicos

Page 23: MPLS DiffServ, Extensões TE em IGP e MPLS VPN com BGP Edgard Jamhour.

Peer e Transit

• Quando dois AS se interconectam de maneira gratuita, visando benefício mútuo de troca de tráfego, eles são denominados peer.

• Quando o relacionamento é comercial, a conectividade é denominada transit.

Page 24: MPLS DiffServ, Extensões TE em IGP e MPLS VPN com BGP Edgard Jamhour.

BGP/MPLS VPN

• Dois padrões definem como criar VPNs de camada 3 usando MPLS:– RFC 2547– RFC 2547bis

• Conceito de VPN:– Múltiplos sites interconectados através de um backbone– Sites são agrupados em subsets– A conectividade IP é oferecida somente entre sites que estão

contidos no mesmo subset

• Aplicação das VPNs– Intranets (sites de uma mesma empresa)– Extranet (sites de empresas distintas)

Page 25: MPLS DiffServ, Extensões TE em IGP e MPLS VPN com BGP Edgard Jamhour.

Elementos

• Customer Edge (CE) Devices– pertencem a um site cliente (host, switch ou router)– tipicamente é um router: CE router

• Provider Edge (PE) Routers – pertencem ao provedor, e conectam-se diretamente aos CEs

• Provider (P) Routers– pertencem ao provedor, mas não se conectam diretamente aos

CEs

• Princípios:– CE routers, em sites distintos, não trocam informação de

roteamento diretamente.– VPNs que não contém sites compartilhados, podem ter um espaço

de enderaçamento sobreposto.

Page 26: MPLS DiffServ, Extensões TE em IGP e MPLS VPN com BGP Edgard Jamhour.

Exemplo

VPN A

VPN A

VPN B

VPN A

VPN B

VPN

LDP

VPN

LDP

VPN

LDP

VPN

P1

P2

P3

P4

P5

LSP - Label Switched Path

PHP LDP

PHP: Penultimate Hop Popping

Page 27: MPLS DiffServ, Extensões TE em IGP e MPLS VPN com BGP Edgard Jamhour.

Requisitos dos PEs

• Deve suportar múltiplas tabelas de encaminhamento– Cada site conectado ao PE deve ser associado a uma tabela de

encaminhamento– A tabela de encaminhamento contém rotas apenas para sites que

tem pelo menos uma VPN em comum.• per-site forwarding table

• As informações relativas as VPNs estão presentes apenas nos PE routers.– Os P routers não precisam ter informações de roteamente

descriminadas por VPN

Page 28: MPLS DiffServ, Extensões TE em IGP e MPLS VPN com BGP Edgard Jamhour.

Exemplo

• PE aprende sobre as rotas de CE1 através de IGP• PE1 propaga as rotas para outros sites que compartilham

a mesma VPN que CE1 através de BGP.

CE1

CE2 CE3

PE1

PE2 PE3

rotas do site

BGP

IGP

VPN V

VPN V

VPN V

FT de CE2(VRF)

FT de CE3(VRF)

FT de CE1(VRF)

Page 29: MPLS DiffServ, Extensões TE em IGP e MPLS VPN com BGP Edgard Jamhour.

Segurança

• Requisito de segurança– Pacotes vindos de um dado site não podem entrar em

uma VPN ao qual o site não pertence

• Implementação– Nenhum roteador no backbone pode aceitar um pacote

com label vindo diretamente de um roteador não pertencente ao backbone a menos que:

• (a) o top label tenha sido atribuído pelo próprio roteador do backbone

• (b) o label utilizado não conflita com nenhuma VPN existente (isto é, o pacote deixa o backbone antes de ser desempilhado).

Page 30: MPLS DiffServ, Extensões TE em IGP e MPLS VPN com BGP Edgard Jamhour.

Distribuição de Rotas VPN via BGP

• PE routers usam BGP para distribuir rotas VPN entre si.• No BGP original:

– Um BGP speaker pode distribuir apenas uma rota para um dado prefixo.

• No cenário VPN:– Um PE router pode receber duas rotas distintas (de diferentes

VPNs) para um mesmo prefixo

• Extensão do BPG– The BGP Multiprotocol Extensions: MP-BGP RFC 2283 – As rotas são acompanhadas de um prefixo de 8 bytes

• RD: Route Distinguisher associado a VRF

• Endereços de 12 bytes: 8 RD + 4 IP = família VPN IPv4

• O anúncio de rota contém o Label MPLS

• O BGP-NEXT HOP é o próprio PE

Page 31: MPLS DiffServ, Extensões TE em IGP e MPLS VPN com BGP Edgard Jamhour.

Filtragem de Rotas via BGP

• Objetivo:– rejeitar rotas para VPNs ao qual o site não pertence

• Utiliza o conceito de comunidades estendidas do BGP– Nas comunidades originais do BPG (2 bytes), ofertas de rotas são

associadas a comunidades.• Rotas são aceitas apenas se o roteador BGP pertencer a mesma

comunidade da rota.

– Para suportar o cenário MPLS, um novo atributo denominado TARGET VPN foi introduzido.

• Uma rota pode:– Ter um único RD– Ter múltiplos TARGET VPN

Page 32: MPLS DiffServ, Extensões TE em IGP e MPLS VPN com BGP Edgard Jamhour.

Exemplo

Um site com duas VPNs: 1

e 2.As rotas são anunciadas

com um único RD e dois

Target VPN

Aceita apenas rotas com os atributos Target VPN = 2 ou 3.

Page 33: MPLS DiffServ, Extensões TE em IGP e MPLS VPN com BGP Edgard Jamhour.

Atribuição de Labels

• Quando um PE recebe um pacote, ele atribui 2 labels:– Label externo: LSP para o BGP next-hop– Label interno: Rede de destino

Page 34: MPLS DiffServ, Extensões TE em IGP e MPLS VPN com BGP Edgard Jamhour.

Exemplo

• No roteador de ingresso, o label interno é aprendido via iBGP.

• O label externo identifica LSP para o nó de egresso.

Page 35: MPLS DiffServ, Extensões TE em IGP e MPLS VPN com BGP Edgard Jamhour.

Configuração:• Roteamento no core é IGP• Todos os PEs são conectados por MPLS• MP-iBGP fully meshed entre os PE’s• VPN configurado nos VPN PE’s

• Sem controle nos caminhos LSP

Cenário 1: VPN (PE) + LDP (P, PE)

VPN A

VPN A

VPN B

VPN A

VPN B

VPN

LDPVPN

LDPVPN

LDPVPN

P1

P2

P3

P4

P5

LSP - Label Switched Path

PHP LDP

PHP: Penultimate Hop Popping

Page 36: MPLS DiffServ, Extensões TE em IGP e MPLS VPN com BGP Edgard Jamhour.

• Possibilidade de fast-reroute

VPN A

VPN A

VPN B

VPN A

VPN B

VPNP1

P2

P3

P4

P5

TEVPN TE

VPNTEVPN

OSPF area 0 OSPF area 1 OSPF area 2

Configuração:• Utiliza túneis RSVP TE Tunnel (PE-PE) para configurar o LSP• Pode criar túneis de backup entre os PEs

Cenário 2: VPN (PE) + RSVP TE Tunnel (PE-PE)

PHP TE

Page 37: MPLS DiffServ, Extensões TE em IGP e MPLS VPN com BGP Edgard Jamhour.

ISP B - Site Y

ISP B’s Customers

PE2

ISP A Carrier Backbone

ISP B - Site X

ISP B’s CustomersCE2

CE1 PE1

ASBR1, RR ASBR2, RR

iBGP

MP- iBGP

LDP

VPN B

VPN B

VPN AVPN B

LDPVPN AVPN B

LDPVPN AVPN B

LDP

VPN B

LDPVPN AVPN B

LDP

VPN B

Carrier’s Carrier VPN Case 3

Cenário 3: Carrier’s Carrier VPN

Page 38: MPLS DiffServ, Extensões TE em IGP e MPLS VPN com BGP Edgard Jamhour.

Cenário 5: Inter-Providers Backbone VPN

• MP-iBGP é utilizado para conectar PEs no mesmo AS• MP-eBGP é utilizado para conectar PEs em AS distintos

PE-ASBR1 PE-ASBR2

AS B

CE1 CE2

PE1

PE2

RR-A RR-B

LDP

VPN B

VPN B

LDPVPN A LDP

VPN A

VPN AB

AS A

MP- eBGP

MP- iBGPMP- iBGP

Page 39: MPLS DiffServ, Extensões TE em IGP e MPLS VPN com BGP Edgard Jamhour.

Links de Interesse

• http://logbud.com/visual_trace• http://www.asnumber.networx.ch/• http://www.bgp4.as/internet-exchanges