Universidade Federal do Rio de Janeiro Escola Politécnica Departamento de Engenharia Eletrônica e de Computação Redes de Computadores II Shim 6 e IPv6 multihoming Aluna Priscilla Lusie Coelho Velozo Professores Otto Carlos M. Bandeira Duarte Luis Henrique M. K. Costa Novembro/2009 Sumário 1. 2. 3. Introdução Multihoming Protocolo IP 3.1 IPv4 3.2 IPv6 3.2.1 Motivação 3.2.2 Tipos de endereços 3.2.3 Fragmentação 3.3.4 Cabeçalho 3.3.5 Cabeçalho Extra 3.3 IPv4 x IPv6 4. 5. Shim 6 Conclusão 1. Introdução  “Escassez” de endereços IP  Uso comercial atual da internet  Múltiplos endereços IP por interface  Serviços sobre IP   VoIP Streaming de vídeo em tempo real 2. Multihoming  Múltiplos pontos de conexão   Evita a falha de conexão Permite o equilíbrio da carga de computadores  Posicionamento dos roteadores e switches  Evitar ponto único de controle de hardware 2. Multihoming - continuação  Link único, Múltiplos endereços IP  Falha do link, queda da conexão  Múltiplas interfaces, endereço IP único por interface    Cada interface tem um ou mais endereços IP Se um link falhar, basta utilizar outro endereço IP Conexões existentes não poderão ser continuadas por outra interface 2. Multihoming - continuação  Múltiplos links, endereço IP único    Multihoming de fato Utiliza o protocolo BGP para controlar o roteamento das mensagens Mais comumente usado para um site e não para uma estação única  Múltiplos links, múltiplos endereços IP    Permite usar todos os links ao mesmo tempo Aumento da banda passante disponível Detecção de saturação ou falha em tempo real 3. Protocolo IP  Camada 3 do modelo TCP/IP  Encaminhamento de dados  Dados enviados em pacotes  Não há identificação prévia entre os hosts  Confiabilidade deve ser adicionada na camada de transporte Modelo TCP/IP 3. Protocolo IP  Versão atual mais utilizada: IPv4  IPv5  protocolo experimental  intenção de coexistência com IPv4  Nova versão: IPv6 3.1. IPv4  Endereço com 32 bits  4 octetos  Ex: 240.67.128.2  Endereço: rede + host  4,29 bilhões de endereços 3.1. IPv4 - continuação  Dividido em classes 3.2. IPv6  Scott Bradner e Allison Marken  1994  RFC 2460  Endereço com 128 bits  3,4 * 10³⁸ endereços 3.2. IPv6  8    octetos 1F44.25AB.112E.0000.0988.87EC.9900.0076 3ffe:6a88:85a3:0000:0000:0000:0000:7344 3ffe:6a88:85a3::7344  Endereço: rede + host  Não existem classes de endereços  Logo, não é definida qualquer fronteira 3.2.1. IPv6 - motivação  Mais endereços:   Internet -> aumento da população Nova geração de dispositivos    PDA Telefones móveis Exaustão de endereços IP  Suporte para atribuição automática de endereços  Autoconfiguração de endereços   Plug-and-play de máquinas na Internet Simplificação das tabelas de roteamento  Menor carga de processamento 3.2.1. IPv6 - motivação  Cabeçalhos de extensão como opção  Generalidade  Eficiência  Conexões apropriadas de áudio e vídeo  exigências em termos de qualidade de serviço (QoS)   Simplifica a adição de novas especificações Opções de segurança  Autenticação  Integridade  Confidencialidade 3.2.2. IPv6 – Tipos de Endereços  unicast  cada endereço corresponde a uma interface  multicast   cada endereço corresponde a múltiplas interfaces enviada uma cópia para cada interface  anycast   múltiplas interfaces que partilham um prefixo comum enviado para um dos dispositivos, por exemplo, o mais próximo 3.2.3. IPv6 - Fragmentação  Maximum Transmission Unit (MTU)  Percurso pode ser alterado  Processo dinâmico de descoberta  Internet Control Message Protocol (ICMP)  Host envia pacotes ICMP de vários tamanhos  Fragmenta-se com o tamanho do pacote que alcançou o destino  Prefixo não fragmentável copiado para todos os fragmentos  Informação guardada num cabeçalho de extensão 3.2.4. IPv6 - cabeçalho  Versão  4bits  Protocolo do pacote, no caso, 6  Classe de tráfego  8 bits  Classe de serviço a que o pacote pertence  Diferenciação do tratamento conforme exigência da aplicação  Qualidade de serviço (QoS) na rede 3.2.4. IPv6 - cabeçalho  Identificação de fluxo  20 bits  Bom desempenho  Envia datagramas ao longo de um caminho pré-definido  Fluxo orientado -> demanda muitos pacotes  Fluxo não-orientado -> não demanda muito tráfego  Comprimento dos dados  16 bits  Volume de dados em bytes  Próximo cabeçalho  8 bits  Aponta para o primeiro header de extensão 3.2.4. IPv6 - cabeçalho  Limite de saltos  8 bits  número máximo de saltos do datagrama  semelhante ao Time to Live - TTL (IPv4)  Endereço da fonte  128 bits  Endereço de origem  Endereço de destino  128 bits  Endereço de destino 3.2.4. IPv6 - cabeçalho 3.2.5. IPv6 – cabeçalho extra  A serem processados na seguinte ordem:  Hop-By-Hop Options Header informações opcionais a serem examinadas em cada nó  somente uma opção foi criada  suporte a datagramas que excedem 64Kb.   Routing Header  Lista um ou mais nós intermediários 3.2.5. IPv6 – cabeçalho extra  Fragment Header    Gerencia os fragmentos de um datagrama Fragmentos múltiplos de 8 octetos Cada cabeçalho indica se há outros fragmentos ou não 3.2.5. IPv6 – cabeçalho extra  Next Header: próximo cabeçalho que o segue  Reserved: uso futuro  Fragment Offset: posição na mensagem onde o dado de um determinado fragmento aparece;  More Fragments: indica a existência de mais fragmentos. 3.2.5. IPv6 – cabeçalho extra  Authentication Security Payload Header  Garante a identidade da origem    Next Header: próximo cabeçalho que o segue; Payload Length: tamanho de Authentication Data em palavras de 32 bits; Reserved: reservado para uso futuro 3.2.5. IPv6 – cabeçalho extra  Security Parameters Index     Sequence Number     Valor pseudo-aleatório em 32 bits Associação de segurança do datagrama Valor zero - não há associação de segurança contador contra replays incrementado a cada pacote enviado quando completa um ciclo, voltando a valer zero, uma nova chave é criada Authentication Data  Valor de verificação de integridade 3.2.5. IPv6 – cabeçalho extra  Encapsulating Security Payload Header  Garante confidencialidade e a integridade    Security Parameters Index: segurança do datagrama Sequence Number: contador contra replays Payload Data: informações de tipo do campo Next Header 3.2.5. IPv6 – cabeçalho extra  Padding    Limite dos parâmetros dos algoritmos utilizado Completa o número de bytes que faltam Payload Length  Tamanho do campo Authentication Data em palavras de 32 bits  Next Header: próximo cabeçalho  Authentication Data: valor de verificação de integridade 3.2.5. IPv6 – cabeçalho extra   Destination Options Header  informações opcionais  Examinadas apenas pelo nó de destino Upper Layer Header 3.3. IPv4 x IPv6  IPv4  4,29 bilhões de endereços  Fragmentação feita pelos roteadores intermediários  Mapeamento para IPv6   ::FFFF:<endereço IPv4> IPv6     3,4 * 10³⁸ endereços Fragmentação feita pelo host Compatibilidade com IPv4  ::<endereço IPv4>   Surge o registro AAAA Surge o registro A6 DNS ainda não é facilmente estendido 4. Shim 6    Protocolo que especifica a camada 3 Provê agilidade abaixo dos protocolos de transporte Capacidade de failover – para que a técnica de multihoming possa ser fornecida através do IPv6  Esconde o multihoming das aplicações 4. Shim 6  Múltiplos prefixos de endereços IP  Criticado devido aos impactos operacionais  Os servidores em um site com múltiplos provedores alocados com prefixos IPv6 usarão o protocolo do SHIM6.  Possibilidade de multihoming um site sem a necessidade de um prefixo de endereço IPv6 independente de provedor  RFCs 5533 a 5535 5. Conclusão  Vantagens:  Pode resolver vários problemas da internet  Maior segurança  Auto-configurações e outros meios que facilitam a montagem de uma rede  Desvantagens:  Necessárias adaptações nos S.O.s  Em geral, mais complexo para os administradores de rede  Aumento de roteamento  Logo, maior tabela -> pode ser demasiado elevado para os atuais hardwares de roteamento lidar de forma eficiente  novo hardware com maior memória deve ser produzido a um custo menor