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
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
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
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
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
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
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
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
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-ietfisis-traffic-05.txt
– Katz D. Yeung D., Traffic Engineering Extensions to OSPF - draftkatz-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
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
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)
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.
Exemplo
VPN A
LDP
VPN
VPN B
LDP
LDP
LSP - Label Switched Path
PHP: Penultimate Hop Popping
VPN
VPN
VPN B
P3
P5
P1
PHP
VPNLDP
VPN A
VPN A
P2
P4
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
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.
VPN V
CE1
IGP
FT de CE2
(VRF)
CE2
FT de CE1
(VRF)
PE1
BGP
VPN V
PE2
rotas do site
FT de CE3
(VRF)
PE3
CE3
VPN V
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).
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
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
Exemplo
Aceita apenas rotas com os
atributos Target VPN = 2 ou 3.
Um site com
duas VPNs: 1
e 2.
As rotas são
anunciadas
com um único
RD e dois
Target VPN
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
Exemplo
• No roteador de ingresso, o label interno é aprendido via
iBGP.
• O label externo identifica LSP para o nó de egresso.
Cenário 1: VPN (PE) + LDP
(P, PE)
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
LSP - Label Switched Path
PHP: Penultimate Hop Popping
VPN A
LDP
VPN
VPN B
LDP
VPN
LDP
VPN
PHP LDP
VPN B
P3
P5
P1
VPN A
VPN A
P2
• Sem controle nos caminhos LSP
VPN
P4
Cenário 2: VPN (PE) + RSVP TE Tunnel
(PE-PE)
Configuração:
• Utiliza túneis RSVP TE Tunnel (PE-PE) para configurar o LSP
• Pode criar túneis de backup entre os PEs
OSPF area 1
OSPF area 0
OSPF area 2
VPN A
TE
VPN
TE
VPN
PHP TE
VPN B
P3
P5
P1
VPN
VPN A
VPN A
P2
• Possibilidade de fast-reroute
VPN B
TE
VPN
P4
Cenário 3: Carrier’s Carrier VPN
iBGP
ISP B - Site X
LDP
CE1
VPN B
PE1
LDP
VPN A
VPN B
LDP
VPN A
VPN B
ISP B’s Customers
LDP
VPN A
VPN B
LDP
ASBR1, RR
VPN B
VPN A
ASBR2, RR
VPN B
MP- iBGP
ISP B’s Customers
PE2
ISP A Carrier Backbone
Carrier’s Carrier VPN Case 3
VPN B
LDP
VPN B
CE2
ISP B - Site Y
Cenário 5: Inter-Providers Backbone VPN
RR-A
AS A
RR-B
AS B
LDP
PE1
CE1
VPN AB
LDP
VPN A
PE-ASBR1
LDP
VPN A
MP- iBGP
VPN B
VPN B
CE2
PE-ASBR2
MP- eBGP
PE2
MP- iBGP
• MP-iBGP é utilizado para conectar PEs no mesmo AS
• MP-eBGP é utilizado para conectar PEs em AS distintos
VPLS
• Virtual Private LAN Service (VPLS)
– Implementação de VPN MPLS em camada 2
– VPN multiponto
• Esse modo de operação permite transportar quadros
Ethernet no interior da rede MPLS
• Dois serviços:
– Transparent LAN Service (TLS)
• Todos os CPEs conectados a VPLS estão no mesmo domínio de
broadcast
– Ethernet Virtual Connection Service (EVCS)
• Vários domínios de broadcast podem ser criados (VLANs)
VPLS
VPLS
• A rede VPLS simula um switch de camada 2
Modelo de Referência
Exemplo
Links de Interesse
• http://logbud.com/visual_trace
• http://www.asnumber.networx.ch/
• http://www.bgp4.as/internet-exchanges
Download

VPNs com MPLS