A experiência amorosa e a reflexão sobre o Amor.pptx
Problemas IPv4 e soluções IPv6
1. Problemas com IPv4
Redes de Computadores ! Situação Internet em 1996 (American Registry for Internet Numbers)
Instituto de Informática - UFRGS
! 100% dos endereços classe A , 62% dos endereços classe B, 37% dos
endereços classe C alocados
IPv6 ! Conclusão: indicativo de esgotamento de endereços IP
! Mesmo um endereço IP sendo em 32 bits (232 ≈ 4 bilhões de endereços)
Internet Control Message Protocol (ICMP)
! Fatores que contribuem para esse “esgotamento”
Instituto de Informática - UFRGS
! Desperdício de endereços pelo esquema de prefixo+sufixo das classes A,B e C
! Grande vilã → redes de classe B (216 - 2 = 65534 hosts)
! Crescimento de uso de IP (pontos de venda, www, terminais…)
A. Carissimi -19-nov.-09
! Problema adicional: tamanho de tabelas de roteamento
Aula 24
Redes de Computadores 2
Soluções possíveis para os problemas do IPv4 Internet Protocol version 6 (IPv6)
! Soluções paliativas ! Solução para “suprir” a demanda de endereços IPs e de novos
! CIDR: Classless InterDomain Routing serviços
! NAT: Network Address Translator
! Novo protocolo definido em uma série de RFCs
! Implementação de um novo protocolo ! RFC1752:recomendações para próxima geração IP
! IPv6 (IPng)
! RFC2460: especificação completa
! Benefícios das soluções paliativas ! RFC2373: formato de endereços
Instituto de Informática - UFRGS
Instituto de Informática - UFRGS
! Sobrevida a capacidade de endereçamento IP (NAT e CIDR)
! etc...
! Redução de tabelas de roteamento (CIDR)
! Entretanto, Internet continua vítima de seu sucesso
A. Carissimi -19-nov.-09
A. Carissimi -19-nov.-09
! CIDR e NAT retiraram “pressão” para adoção IPv6
! Novas previsões para esgotamento de endereçamento: 2012!!
Redes de Computadores 3 Redes de Computadores 4
2. Objetivos do IPv6 Estrutura do pacote Internet Protocol version 6
Zero ou mais variável
! Suportar bilhões de nós (mesmo com desperdício) 40 bytes
! Reduzir tamanho de tabelas de roteamento IPv6 Header Header extensão ... Header extensão Transporte (TPDU)
! Simplificar o protocolo (melhorar desempenho de roteadores)
! Oferecer autenticação e privacidade ! Cabeçalho (header) de tamanho fixo de 40 bytes
! Suporte a qualidade de serviços ! Simplificado em relação ao IPv4 (menos campos)
Instituto de Informática - UFRGS
Instituto de Informática - UFRGS
! Melhorar capacidade de multidifusão ! Seguido por headers de extensão (opcionais)
! Hop-by-hop, routing, fragment, authentication, encapsulating security,
! Permitir evolução do protocolo
destination options
! Possibilitar a convivência de protocolos novos com antigos
A. Carissimi -19-nov.-09
A. Carissimi -19-nov.-09
! Não é necessário a presença de todos, porém os que existirem deverão
respeitar essa ordem
Redes de Computadores 5 Redes de Computadores 6
Header IPv6 Endereços IPv6
Especifica o próximo
Controle de tráfego: classes e prioridades header: extensão ou ! Possuem uma largura de 128 bits (2128 endereços IPv6)
protocolo de nível ! e.g.; FEDC:BA98:7654:3210:EBCD:A987:6543:210F
Versão (6) superior (TCP, UDP)
! Três tipos de endereços:
! Unicast:
! Identifica um único equipamento
! Anycast:
Instituto de Informática - UFRGS
Instituto de Informática - UFRGS
40 bytes
! Identifica um conjunto de equipamento com um mesmo prefixo
Tamanho da área
após o header IPv6 ! Pacote é entregue a um equipamento desse conjunto
Nro. máximo
de hops (TTL) ! Multicast:
A. Carissimi -19-nov.-09
A. Carissimi -19-nov.-09
! Identifica um conjunto de equipamentos com diferentes prefixos
! Pacote é entregue a todos os equipamentos desse conjunto
Identificador de uma seqüência de pacotes onde o emissor deseja
uma intervenção especial do roteador (QoS)
Redes de Computadores 7 Redes de Computadores 8
3. Hop-by-hop header Opções hop-by-hop
! Informações que todos os roteadores devem examinar ! Apenas duas implementadas:
! Composto por três campos: ! Jumbo Payload: envio de área de dados superiores a 65535 bytes
! Tipo (next header) : identificação do próximo header que o segue ! Router alert:
! Extensão: quantidade de bytes que o compõem (em unidades de 64 bits) ! Indica que o conteúdo do pacote é de interesse do roteador
! Opções: implementa um tipo de serviço, possui: ! Oferece suporte a protocolos de QoS (RSVP, por exemplo)
! Tipo do serviço implementado ! Bits do campo de tipo informa ação a ser tomada se opção não é
Instituto de Informática - UFRGS
Instituto de Informática - UFRGS
! Tamanho da área de dados associado a esse serviço implementada
! Área de dados associada a esse serviço (parâmetros) ! 00: salta o header e analisa o próximo
! 01: descarta o pacote
A. Carissimi -19-nov.-09
A. Carissimi -19-nov.-09
Tam. Mínimo
! 10: descarta o pacote e envia erro (ICMP)
(64 bits)
! 11: descarta o pacote e envia erro ICMP se não é multicast
232 bytes
Redes de Computadores 9 Redes de Computadores 10
Fragmentation header (1) Fragmentation header (2)
! Fragmentação só é realizado pela fonte (sistema final)
! Nós intermediários (roteador) não realizam fragmentação Medido em unidades de 64
Tipo próximo header bits (8 bytes)
! Fonte pode descobrir a MTU mínima da rede para otimizar a extensão ou transporte 0: last fragment
transmissão 1: more fragment
! Uma rede IPv6 deve suportar uma MTU mínima de 1280 bytes
! Composto por quatro campos:
Instituto de Informática - UFRGS
Instituto de Informática - UFRGS
! Tipo (next header): : identificador do próximo header que o segue
! Offset do fragmento
! Flag More
A. Carissimi -19-nov.-09
A. Carissimi -19-nov.-09
! Identificador do fragmento Identificador do pacote para reconstrução
Redes de Computadores 11 Redes de Computadores 12
4. Routing header Routing header: exemplo
! Contém uma lista de um ou mais nós intermediários a serem Decrementado a cada atualização do endereço
percorridos até chegar o destino de destino do header IPv6
! Composto por quatro campos:
! Tipo (next header): identifica o próximo header que o segue
! Extensão: tamanho em unidades de 64 bits deste header
! Tipo de roteamento
Instituto de Informática - UFRGS
Instituto de Informática - UFRGS
! Indicação de quantos roteadores ainda faltam até o destino
A. Carissimi -19-nov.-09
A. Carissimi -19-nov.-09
Roteamento copia o endereço do destino i para o header
IPv6 (campo de destino)
Redes de Computadores 13 Redes de Computadores 14
Destination header Authentication header
! Formato similar ao hop-by-hop ! Permite a um destinatário ter certeza de quem enviou o pacote
! Fornece informações para o nó destino ! Baseado na cifragem e decifração da área de dados através de
! Informações são procedimentos a serem feitos e/ou tratados pelo nó destino chaves públicas e privadas
! Não há “martelo batido” sobre todas as alternativas de ! Composto por quatro campos:
procedimentos ! Tipo (next header): identifica o próximo header que o segue
Instituto de Informática - UFRGS
Instituto de Informática - UFRGS
! Extensão do cabeçalho de autenticação
! Número empregado para obtenção da chave secreta
! Valor MD5 (checksum) do header
A. Carissimi -19-nov.-09
A. Carissimi -19-nov.-09
Lenght
Key number (32)
Signature MD5 (Checksum)
Redes de Computadores 15 Redes de Computadores 16
5. Encrypted security header ICMP: Internet Control Message Protocol
! Permite o envio de dados cifrados ! Baseado na troca de mensagens de controle
! Entre sistemas finais
! Entre sistemas intermediários (roteadores) e sistemas finais
! Protocolo para sinalizar ocorrências de erros em IP
! e.g.: destino não alcançavel, falta de buffer (roteador), redirecionamento...
! Integrado ao protocolo IP
Instituto de Informática - UFRGS
Instituto de Informática - UFRGS
! IP utiliza ICMP para indicar a ocorrências de erros
! ICMP emprega IP para enviar mensagens de erros
! Não confiável
A. Carissimi -19-nov.-09
A. Carissimi -19-nov.-09
! Descrito na RFC 792
Redes de Computadores 17 Redes de Computadores 18
ICMPv4 ICMP PDU (encapsulada em Ethernet)
! Duas classes de mensagens: 0x0800 = IP
! Erro: servem para indicar para a origem do datagrama a ocorrência de um erro
MAC destino MAC origem Tipo Dados CRC
! Na estrutura ou no conteúdo de um datagrama
! Na entrega de um datagrama (roteamento, por exemplo)
! Informação: empregada pela origem para arguir ou monitorar situações Cabeçalho IP Dados (IP)
! Envolve tipicamente um par de mensagens (request/reply)
Instituto de Informática - UFRGS
Instituto de Informática - UFRGS
! Cada classe é subdividida em tipos e em código (subtipo) Ver hlen TOS Payload lenght
ICMP PDU
! e.g. tipo = destination unreacheable; código = razão Fragment ID Flags + Offset tipo código checksum
TTL Protocol Checksum (depende da mensagem ICMP)
A. Carissimi -19-nov.-09
A. Carissimi -19-nov.-09
IP source address
IP destination address n palavras (n >= 0)
ICMP = 1; TCP = 6; UDP = 17
Redes de Computadores 19 Redes de Computadores 20
6. Alguns formatos de mensagens ICMP Tipos de mensagens ICMP: erro
! Destination Unreacheable
! Empregada sempre que não conseguir entregar um datagrama ao
destinatário
! Dezesseis situações distintas
! Situações mais comuns::
! Não é possível alcançar a rede destino
Instituto de Informática - UFRGS
Instituto de Informática - UFRGS
! Sistema final não implementa o protocolo ao qual o datagrama se destina
! Não for possível enviar adiante o datagrama sem fragmentá-lo (bit DF)
! Time exceeded
A. Carissimi -19-nov.-09
A. Carissimi -19-nov.-09
! Enviado ao emissor do datagrama quando:
! Time-to-live chega a zero (sistemas intermediários e finais)
! Ocorrência de time-out na remontagem de fragmentos (sistemas finais)
Redes de Computadores 21 Redes de Computadores 22
Tipos de mensagens ICMP: erro (cont.) Tipos de mensagens ICMP: informação
! Source Quench: ! Echo request/reply
! Forma de solicitar que uma origem reduza sua taxa de envio ! Forma de testar a comunicação entre duas máquinas
! Empregado por um sistema (final ou intermediário) solicitar a redução do ! Request: é enviada de um sistema qualquer a outro
fluxo de envio de datagramas
! Reply é a resposta a um request (mesma área de dados)
! Parameter problem
! Utilizado para sinalizar um erro sintático ou semântico em um cabeçalho IP ! Time stamp request/reply
! Similar a mensagem de echo
Instituto de Informática - UFRGS
Instituto de Informática - UFRGS
! Enviado ao emissor tanto por sistemas intermediários (roteadores) como por
sistemas finais ! Empregado para estimar atrasos na rede
! Redirect ! Request inclui a hora do momento do envio
! Enviado por um roteador para ! Reply adiciona a hora que foi recebido e a hora que foi transmitido
A. Carissimi -19-nov.-09
A. Carissimi -19-nov.-09
! Informar a um host um roteador mais apropriado para um determinado
destino
! Indicar erro de roteamento
Redes de Computadores 23 Redes de Computadores 24
7. Tipos de mensagens ICMP: informação (cont.)
! Router advertisement e solicitation
! Servem para identificar a presença de roteadores na rede
! Advertisment: enviado pelos roteadores para se anunciar a rede
! Solicitation: enviado por um host para descobrir roteadores na rede
! Envios são feitos com base em multicast nos endereços 224.0.0.1 (all
devices) ou 224.0.0.2 (all routers)
Instituto de Informática - UFRGS
Instituto de Informática - UFRGS
! Address Mask Request/Reply
! Empregado para um sistema aprender sua máscara de subrede
! Mask Request: transmitida em broadcast
A. Carissimi -19-nov.-09
A. Carissimi -19-nov.-09
! Mask Reply: roteador da rede responde com a máscara
! Traceroute messages
! Forma de otimizar o funcionamento do traceroute baseado no TTL
Redes de Computadores 25 Redes de Computadores 26
Comando ping: exemplo de echo request/reply
Instituto de Informática - UFRGS
Instituto de Informática - UFRGS
A. Carissimi -19-nov.-09
A. Carissimi -19-nov.-09
Redes de Computadores 27 Redes de Computadores 28
8. Comando traceroute: exemplo de time exceeded Exemplo de traceroute
! Determinar caminho entre dois sistemas
! Baseado no funcionamento do campo Time to Live (TTL):
! Envio de uma série de datagramas e espera uma resposta
! Primeiro pacote tem TTL=1
! primeiro roteador descarta o pacote e envia de volta uma mensagem do
tipo ICMP time exceeded
Instituto de Informática - UFRGS
Instituto de Informática - UFRGS
! possível detectar o endereço do roteador a partir do campo source do
datagrama ICMP de resposta
! Incrementa o TTL de uma unidade e repete o procedimento
A. Carissimi -19-nov.-09
A. Carissimi -19-nov.-09
Redes de Computadores 29 Redes de Computadores 30
ICMPv6 Neighbour advertisement and solicitation
! Muito similar ao ICMPv4 ! Objetivo é determinar a existência de vizinhos e obter parâmetros
! Principais modificações de rede
! Inclusão de um novo código (packet too big) em mensagens do tipo ! Suporte a resolução de endereços
destination unreacheable ! Mensagens:
! Router renumbering message ! Solicitation
! Neighbour solicitation e advertisement messages ! Verificar a existência de vizinhos
Instituto de Informática - UFRGS
Instituto de Informática - UFRGS
! Testar a alcançabilidade dos vizinhos
! Iniciar procedimento de resolução de endereços
! Advertisement
! Confirma a existência de vizinhos
A. Carissimi -19-nov.-09
A. Carissimi -19-nov.-09
! Informa mapeamento de endereços de nível 2 e nível 3
Redes de Computadores 31 Redes de Computadores 32
9. Leituras complementares Leituras complementares
! Stallings, W. Data and Computer Communications (6th edition), ! Stallings, W. Data and Computer Communications (6th edition),
Prentice Hall 1999. Prentice Hall 1999.
! Capítulo 15, seção 15.3 ! Capítulo 15, seções 15.3, 15.4
! Tanenbaum, A. Computer Networks (3th edition), Prentice Hall 1996. ! Tanenbaum, A. Computer Networks (3th edition), Prentice Hall 1996.
! Capítulo 5, seção 5.5.4 ! Capítulo 5, seções 5.5.3, 5.5.9, 5.5.10
! Carissimi, A.; Rochol, J; Granville, L.Z; Redes de Computadores. ! Tanenbaum, A. Redes de Computadores (4a ed.), bookman, 2003.
Instituto de Informática - UFRGS
Instituto de Informática - UFRGS
Série Livros Didáticos. Bookman 2009. ! Capítulo 5, seções 5.6.2 e 5.6.8
! Capítulo 5, seções 5.5.3 e 5.5.5 ! RIRs
! http://www.ripe.net/ripencc/about/regional/rir-system.html
A. Carissimi -19-nov.-09
A. Carissimi -19-nov.-09
Redes de Computadores 33 Redes de Computadores 34