320 likes | 442 Vues
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.
E N D
MPLS DiffServ , Extensões TE em IGPe 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
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-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
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.
VPN A VPN B VPN B P3 P5 P1 VPN A VPN A P2 P4 LDP LDP LDP VPN VPN VPN VPN Exemplo LSP - Label Switched Path PHP: Penultimate Hop Popping PHP LDP
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 rotas do site IGP FT de CE1 (VRF) FT de CE2 (VRF) PE1 FT de CE3 (VRF) BGP VPN V CE2 CE3 PE2 PE3 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.
VPN A VPN B VPN B P3 P5 P1 VPN A VPN A P2 P4 LDP LDP LDP VPN VPN VPN VPN 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 PHP LDP • Sem controle nos caminhos LSP
OSPF area 1 OSPF area 0 OSPF area 2 VPN A VPN B VPN B P3 P5 P1 VPN A VPN A P2 P4 TE TE TE VPN VPN VPN VPN 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 PHP TE • Possibilidade de fast-reroute
iBGP ISP B - Site X ISP B’s Customers CE1 PE1 ASBR1, RR ASBR2, RR VPN B VPN B VPN B VPN B VPN B VPN B VPN B VPN B MP- iBGP PE2 CE2 ISP B - Site Y ISP B’s Customers ISP A Carrier Backbone LDP LDP LDP LDP LDP LDP VPN A VPN A VPN A VPN A Cenário 3: Carrier’s Carrier VPN Carrier’s Carrier VPN Case 3
MP-iBGP é utilizado para conectar PEs no mesmo AS MP-eBGP é utilizado para conectar PEs em AS distintos VPN B VPN B LDP LDP LDP VPN A VPN A Cenário 5: Inter-Providers Backbone VPN RR-A RR-B AS B AS A PE1 VPN AB CE1 PE-ASBR1 CE2 PE-ASBR2 MP- eBGP PE2 MP- iBGP MP- iBGP
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 • A rede VPLS simula um switch de camada 2
Links de Interesse • http://logbud.com/visual_trace • http://www.asnumber.networx.ch/ • http://www.bgp4.as/internet-exchanges