Fault-Tolerant
Virtual Private Networks
Within an Autonomous System
Junghee Han, G. Robert Malan e Farnam Jahanian
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
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
Contribuições do Artigo
Arquitetura FVPN
Algoritmos para o cálculo de rotas minimamente coincidentes
Validação com dados coletados em um backbone operacional
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
Modelo de VPN
Baseada em IP (L3)
Gateways de borda sem suporte no
backbone
Arquitetura FVPN
Gateway VPN VPN Gateway System AutonomousArquitetura de um Gateway
Rede Detecção de Falhas Aplicações TCP IP IPsec Aplicação de Rotas Identificação de Rotas (off−line) Seleção de Rotas Nível do kernel Nível de aplicaçãoComponentes da Arquitetura (1/2)
Identificação de rotas
acesso a informações de roteamento link state calcula caminhos disjuntos ou minimamente coincidentes
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
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
Rotas Minimamente Coincidentes (1/2)
P2: (A,E,B,D,C) D C E B A P0: (A,B,C) P1: (A,B,D,C) destino origem S1 = P0,P1 S2= P0,P2Rotas Minimamente Coincidentes (2/2)
P4: (A,F,B,D,C) C B A P0: (A,B,C) P1: (A,B,D,C) P2: (A,B,E,C) destino origem F E D P3: (A,F,B,C) S1 = P0,P1,P2,P3 S2= P0,P2,P3,P4Cá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
Algoritmo Iterativo (1/2)
Aplicação sucessiva do algoritmo de menor caminho
A cada iteração, cada link na rota escolhida é
Algoritmo Iterativo (2/2)
1: 2: if then 3: return( ) 4: end if 5: 6: while do 7: ! " # $&% ' (*) # ( + , -8: extrai o caminho de mínimo custo .
/ " # $&% ' (*) # ( 0 . 1 / 9: 2 .
10: ajusta o custo dos links em .
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
Transformação do Grafo
j i K−1 j i (M /2,1)K−1 (M /2,1)2 /2,1) (M1 (M /2,1)1 (M /2,1)2 (M /2,1)K−1 (1,1) (custo,capacidade) n n2 n1Transformação do Grafo
K−1 j i (M /2,1)K−1 (M /2,1)2 /2,1) (M1 (M /2,1)1 (M /2,1)2 (M /2,1)K−1 (1,1) (custo,capacidade) n n2 n1 M diâmetro sub-nós linksFormulação do Problema
Minimizar sujeito a (1) se se (2) se origem se destino caso contrário (3)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 resolve o problema
novamente para
Extensão para Falhas de Nós
Extensão para Falhas de Nós
(1,K) i (M /2,1)K−1 (M /2,1)2 /2,1) (M1 (M /2,1)1 (M /2,1)2 (M /2,1)K−1 (1,1) (custo,capacidade) n n2 n1 K−1 i’ (1,K) (1,K) (1,K) (1,K)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
Detecção de Falhas
Pings entre os gateways da VPN
A cada ping perdido, uma nova rota é selecionada
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 rota no cabeçalho MPLS rótulo no cabeçalho
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 rota no cabeçalho
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
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
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
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
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
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
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 ( )
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
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