Fault-Tolerant Virtual Private Networks Within an Autonomous System Junghee Han, G. Robert Malan e Farnam Jahanian 21st IEEE Symposium on Reliable Distributed Systems (SRDS 2002) Fault-TolerantVirtual Private NetworksWithin an Autonomous System p.1/34
Conteúdo 1. Introdução 2. Arquitetura FVPN 3. Identificação de Rotas 4. Detecção de Falhas, Seleção e Aplicação de Rotas 5. Resultados Experimentais 6. Discussão Fault-TolerantVirtual Private NetworksWithin an Autonomous System p.2/34
Contexto VPNs: redes virtuais que oferecem comunicação segura através da Internet Roteamento na Internet é instável, com tempos de recuperação na ordem de dezenas de segundos FVPN: uma VPN tolerante a faltas rotas backup são pré-calculadas e instaladas quando a rota primária falha, uma backup é usada fail-over transparente para as aplicações Fault-TolerantVirtual Private NetworksWithin an Autonomous System p.3/34
Contribuições do Artigo Arquitetura FVPN Algoritmos para o cálculo de rotas minimamente coincidentes Validação com dados coletados em um backbone operacional Fault-TolerantVirtual Private NetworksWithin an Autonomous System p.4/34
Conteúdo 1. Introdução ( ) 2. Arquitetura FVPN 3. Identificação de Rotas 4. Detecção de Falhas, Seleção e Aplicação de Rotas 5. Resultados Experimentais 6. Discussão Fault-TolerantVirtual Private NetworksWithin an Autonomous System p.5/34
Modelo de VPN Baseada em IP (L3) Gateways de borda sem suporte no backbone Restrita a um único AS (intra-as) Fault-TolerantVirtual Private NetworksWithin an Autonomous System p.6/34
Arquitetura FVPN Gateway VPN Autonomous System Gateway VPN Fault-TolerantVirtual Private NetworksWithin an Autonomous System p.7/34
Arquitetura de um Gateway Nível de aplicação Aplicações Detecção de Falhas Seleção de Rotas Identificação de Rotas (off line) Nível do kernel TCP Aplicação de Rotas IP IPsec Rede Fault-TolerantVirtual Private NetworksWithin an Autonomous System p.8/34
Componentes da Arquitetura (1/2) Identificação de rotas acesso a informações de roteamento link state calcula caminhos disjuntos ou minimamente coincidentes estabelece os caminhos usando RSVP/MPLS Fault-TolerantVirtual Private NetworksWithin an Autonomous System p.9/34
Componentes da Arquitetura (2/2) Seleção de rotas: escolhe um dos caminhos quando a rota primária falha Aplicação ( enforcement ) de rotas: garante que os pacotes trafeguem pela rota selecionada Detecção de falhas: monitora o funcionamento da rota ativa Fault-TolerantVirtual Private NetworksWithin an Autonomous System p.10/34
Conteúdo 1. Introdução ( ) 2. Arquitetura FVPN ( ) 3. Identificação de Rotas 4. Detecção de Falhas, Seleção e Aplicação de Rotas 5. Resultados Experimentais 6. Discussão Fault-TolerantVirtual Private NetworksWithin an Autonomous System p.11/34
Rotas Minimamente Coincidentes (1/2) origem A P0: (A,B,C) E P1: (A,B,D,C) P2: (A,E,B,D,C) B D C destino S1 = P0,P1 S2= P0,P2 Fault-TolerantVirtual Private NetworksWithin an Autonomous System p.12/34
Rotas Minimamente Coincidentes (2/2) origem A P0: (A,B,C) F P1: (A,B,D,C) P2: (A,B,E,C) B P3: (A,F,B,C) E D P4: (A,F,B,D,C) C destino S1 = P0,P1,P2,P3 S2= P0,P2,P3,P4 Fault-TolerantVirtual Private NetworksWithin an Autonomous System p.13/34
Cálculo de Rotas Algoritmos existentes possuem uma de duas propriedades: identificam as melhores rotas links compartilhados identificam rotas disjuntas difícil na prática Nenhuma destas é satisfatória rotas minimamente coincidentes Fault-TolerantVirtual Private NetworksWithin an Autonomous System p.14/34
Algoritmo Iterativo (1/2) Aplicação sucessiva do algoritmo de menor caminho A cada iteração, cada link na rota escolhida é penalizado minimiza o reuso de links Fault-TolerantVirtual Private NetworksWithin an Autonomous System p.15/34
" 0 ". Algoritmo Iterativo (2/2) 1: then 2: if ) 3: return( 4: end if 5: do 6: while -, + (#(*) $&%#'! 7: 1/. (#(*) $&%#' /. 8: extrai o caminho de mínimo custo. 2 9: 10: ajusta o custo dos links em 11: end while Fault-TolerantVirtual Private NetworksWithin an Autonomous System p.16/34
Algoritmo usando PLI Algoritmo iterativo minimiza o número máximo de vezes que um link é compartilhado mas não considera o número total de vezes que todos os links são compartilhados Transforma o grafo que representa a rede e resolve o problema de fluxo em redes de mínimo custo usando PLI Fault-TolerantVirtual Private NetworksWithin an Autonomous System p.17/34
Transformação do Grafo i j Fault-TolerantVirtual Private NetworksWithin an Autonomous System p.18/34
Transformação do Grafo i (custo,capacidade) (1,1) j n 1 (M 1 /2,1) (M /2,1) 1 2 (M /2,1) K 1 (M /2,1) n 2 n K 1 2 (M /2,1) K 1 (M /2,1) M diâmetro sub-nós links Fault-TolerantVirtual Private NetworksWithin an Autonomous System p.18/34
Formulação do Problema a sujeito Minimizar (1) se (2) se origem se (3) destino se caso contrário Fault-TolerantVirtual Private NetworksWithin an Autonomous System p.19/34
Observações para a Solução por PLI Função objetivo: minimizar o custo total das rotas Cálculo off-line Coincidência de rotas novamente para resolve o problema rotas Fault-TolerantVirtual Private NetworksWithin an Autonomous System p.20/34
Extensão para Falhas de Nós i Fault-TolerantVirtual Private NetworksWithin an Autonomous System p.21/34
Extensão para Falhas de Nós (1,K) (1,K) i (custo,capacidade) (1,1) n 1 (M 1 /2,1) (M /2,1) 1 (1,K) i (1,K) (1,K) 2 (M /2,1) K 1 (M /2,1) n 2 n K 1 2 (M /2,1) K 1 (M /2,1) Fault-TolerantVirtual Private NetworksWithin an Autonomous System p.21/34
Conteúdo 1. Introdução ( ) 2. Arquitetura FVPN ( ) 3. Identificação de Rotas ( ) 4. Detecção de Falhas, Seleção e Aplicação de Rotas 5. Resultados Experimentais 6. Discussão Fault-TolerantVirtual Private NetworksWithin an Autonomous System p.22/34
Detecção de Falhas Pings entre os gateways da VPN A cada ping perdido, uma nova rota é selecionada Fault-TolerantVirtual Private NetworksWithin an Autonomous System p.23/34
Seleção e Aplicação de Rotas O módulo de seleção escolhe uma das rotas Os pacotes devem ser encaminhados de acordo com a rota escolhida na origem Source routing IP MPLS rótulo no cabeçalho rota no cabeçalho Fault-TolerantVirtual Private NetworksWithin an Autonomous System p.24/34
Seleção e Aplicação de Rotas O módulo de seleção escolhe uma das rotas Os pacotes devem ser encaminhados de acordo com a rota escolhida na origem Source routing IP MPLS rótulo no cabeçalho rota no cabeçalho Fault-TolerantVirtual Private NetworksWithin an Autonomous System p.24/34
Conteúdo 1. Introdução ( ) 2. Arquitetura FVPN ( ) 3. Identificação de Rotas ( ) 4. Detecção de Falhas, Seleção e Aplicação de Rotas ( ) 5. Resultados Experimentais 6. Discussão Fault-TolerantVirtual Private NetworksWithin an Autonomous System p.25/34
Ambiente de Experimentação Os algoritmos foram validados através de simulação usando dados obtidos de um backbone operacional (MichNet) topologia tráfego de roteamento (OSPF) Algoritmo ideal: escolhe a melhor rota alternativa on-the-fly quando é detectada uma falha Fault-TolerantVirtual Private NetworksWithin an Autonomous System p.26/34
Experimento 1 Injeção de faltas na topologia do backbone para verificar o desempenho dos algoritmos com 3 rotas backup a disponibilidade é praticamente a mesma do algoritmo ideal, mesmo com 10 falhas simultâneas Fault-TolerantVirtual Private NetworksWithin an Autonomous System p.27/34
Experimento 2 Separação entre conexões de clientes e links do backbone e injeção de faltas em ambos, para avaliar melhor os efeitos da redundância níveis de disponibilidade quase equivalentes ao obtido com o algoritmo ideal se existe redundância na topologia, os esquemas propostos oferecem alta disponibilidade se uma topologia não é redundante os esquemas propostos oferecem pelo menos a mesma disponibilidade do algoritmo ideal Fault-TolerantVirtual Private NetworksWithin an Autonomous System p.28/34
Experimento 3 Avaliação dos esquemas propostos com replay de tráfego de roteamento capturado no backbone da MichNet, com dados reais de topologia, falha e reparação de links em VPNs entre a UMich e nós de clientes, os algoritmos evitam de 40% (1 rota backup) a 60% (6 rotas backup) das falhas em VPNs entre a UMich e nós do backbone, os algoritmos evitam de 30% (1 rota backup) a 90% (6 rotas backup) das falhas Fault-TolerantVirtual Private NetworksWithin an Autonomous System p.29/34
Experimento 4 Comparação entre o algoritmo para falha em links e o algoritmo para falha em nós com 1 rota backup, o algoritmo para nós é mais eficaz (evita uma porcentagem maior de falhas) a maioria das falhas em links ocorrem em grupos (justamente pela falha de um nó) com 6 rotas backup, os dois algoritmos apresentam eficácia similar o algoritmo para links passa a incluir caminhos com nós disjuntos no conjunto de backups Fault-TolerantVirtual Private NetworksWithin an Autonomous System p.30/34
Conteúdo 1. Introdução ( ) 2. Arquitetura FVPN ( ) 3. Identificação de Rotas ( ) 4. Detecção de Falhas, Seleção e Aplicação de Rotas ( ) 5. Resultados Experimentais ( ) 6. Discussão Fault-TolerantVirtual Private NetworksWithin an Autonomous System p.31/34
Pontos Positivos Apresenta uma solução eficiente para falhas de comunicação fail-over transparente, baixa latência Propõe algoritmos interessantes para o cálculo de rotas minimamente coincidentes Excelente validação experimental Fault-TolerantVirtual Private NetworksWithin an Autonomous System p.32/34
Pontos Negativos Possível desperdício de recursos (pré-instalação de rotas) trade-off Depende de um protocolo de roteamento Intra-AS escala geográfica reduzida Suscetível a falhas bizantinas Fault-TolerantVirtual Private NetworksWithin an Autonomous System p.33/34
That s all, folks! Fault-TolerantVirtual Private NetworksWithin an Autonomous System p.34/34