Formato do datagrama IP número da versão do protocolo IP comprimento do cabeçalho (bytes) “tipo” dos dados (DS) número máximo de enlaces restantes (decrementado a cada roteador) protocolo da camada superior ao qual entregar os dados 32 bits comp. tipo de comprimento cab serviço início do ident. 16-bits bits fragmento sobre- camada checksum superior vida Internet ver comprimento total do datagrama (bytes) para fragmentação/ remontagem endereço IP de origem 32 bits endereço IP de destino 32 bits Opções (se tiver) dados (comprimento variável, tipicamente um segmento TCP ou UDP) p.ex. temporizador, registrar rota seguida, especificar lista de roteadores a visitar. 4: Camada de Rede 4a-1 Endereço IP: introdução endereço IP: ident. de 32-bits para interface de estação, roteador r interface: conexão entre estação, roteador e enlace físico r m m m roteador típico tem múltiplas interfaces estação pode ter múltiplas interfaces endereço IP associado à interface, não à estação ou roteador 223.1.1.1 223.1.2.1 223.1.1.2 223.1.1.4 223.1.1.3 223.1.2.9 223.1.3.27 223.1.2.2 223.1.3.2 223.1.3.1 223.1.1.1 = 11011111 00000001 00000001 00000001 223 1 1 4: Camada de Rede 1 4a-2 Endereço IP: estrutura r endereço IP: m m r part de rede (bits de mais alta ordem) parte de estação (bits de mais baixa ordem) O quê é uma rede IP? (da perspectiva do endereço IP) m interfaces de dispositivos com a mesma parte de rede nos seus endereços IP m podem alcançar um ao outro sem passar por um roteador 223.1.1.1 223.1.2.1 223.1.1.2 223.1.1.4 223.1.1.3 223.1.2.9 223.1.3.27 223.1.2.2 LAN 223.1.3.1 223.1.3.2 Esta rede consiste de 3 redes IP (para endereços IP começando com 223, os primeiros 24 bits são a parte de rede) 4: Camada de Rede 4a-3 Endereçamento IP 223.1.1.2 Como achar as redes? r disassociar cada interface do seu roteador, estação r criar “ilhas” de redes isoladas 223.1.1.1 223.1.1.4 223.1.1.3 223.1.9.2 223.1.7.0 223.1.9.1 223.1.7.1 223.1.8.1 Sistema interligado consistindo de seis redes 223.1.8.0 223.1.2.6 223.1.2.1 223.1.3.27 223.1.2.2 223.1.3.1 223.1.3.2 4: Camada de Rede 4a-4 Endereço IP: organização •Endereçamento “baseado em classes” classe A 0 B 10 C 110 D 1110 rede 1.0.0.0 to 127.255.255.255 estação rede estação rede estação endereço multiponto 128.0.0.0 to 191.255.255.255 192.0.0.0 to 223.255.255.255 224.0.0.0 to 239.255.255.255 32 bits •uso ineficiente e esgotamento do espaço de endereços •p.ex.: rede da classe B aloca endereços para 65K estações, mesmo se houver apenas 2K estações nessa rede 4: Camada de Rede 4a-5 Endereço IP: organização (cont) •Endereçamento “sem classe” O foco passa a ser a Máscara de Sub-rede, visando flexibilizar o uso e reduzir o disperdício de endereços IP: - “Mascarar” os bits do IP que identificam a Rede e a Estação - Diminuir o tamanho do Domínio de Broadcast r CIDR: Classless InterDomain Routing m m parte de rede do endereço de comprimento arbitrário formato de endereço: a.b.c.d/x, onde x é um prefixo que identifica o no. de bits na parte de rede do endereço parte de rede parte de estação 11001000 00010111 00010000 00000000 200.23.16.0/23 4: Camada de Rede 4a-6 Endereço IP: Cálculo de Sub-Rede Dado o ID de Rede 192.5.34.0/24, criar 5 sub-redes com 12 hosts cada. Com os bits de sub-rede teremos 23 = 8. Com os bits para os hosts teremos 25=32. 8 Sub-Redes Sub-redes 000 001 010 011 100 101 110 111 23=8 0 32 64 96 128 160 192 224 32 endereços de Hosts em cada Sub-rede Host 25=32 00000 00001 00010 00011 00100 . . . . . . 11101 11110 11111 0 1 2 3 4 29 30 31 Com a 2º sub-rede teremos: •ID da Sub-rede: 192.5.34.32 •Máscara de Sub-rede: 255.255.255.224 •Intervalo de Hosts: 192.5.34.33 até 192.5.34.62 •Endereço de Broadcast: 192.5.34.63 4: Camada de Rede 4a-7 Endereços IP: como conseguir um? Estações (parte de estação): r codificado pelo administrador num arquivo r DHCP: Dynamic Host Configuration Protocol: obtém endereço dinamicamente: “plug-and-play” m estação difunde mensagem “DHCP discover” m servidor DHCP responde com “DHCP offer” m estação solicita endereço IP: “DHCP request” m servidor DHCP envia endereço: “DHCP ack” 4: Camada de Rede 4a-8 Endereçamento IP: a última palavra... P: Como um provedor IP consegue um bloco de endereços? A: ICANN: Internet Corporation for Assigned Names and Numbers m aloca endereços m gerencia DNS m aloca nomes de domínio, resolve disputas (no Brasil, estas funções foram delegadas ao Registro nacional, sediado na FAPESP (SP), e comandado pelo Comitê Gestor Internet BR) 4: Camada de Rede 4a-9 Enviando um datagrama da origem ao destino tabela de rotas em A rede dest. próx. rot. 223.1.1 223.1.2 223.1.3 datagrama IP: campos end. IP end. IP misc origem dest r r dados datagrama permanece inalterado, enquanto passa da origem ao destino campos de endereços de interesse aqui A Nenlaces 223.1.1.4 223.1.1.4 1 2 2 223.1.1.1 223.1.2.1 B 223.1.1.2 223.1.1.4 223.1.1.3 223.1.3.1 223.1.2.9 223.1.3.27 223.1.2.2 E 223.1.3.2 4: Camada de Rede 4a-10 Enviando um datagrama da origem ao destino campos dados misc 223.1.1.1 223.1.1.3 Supomos um datagrama IP originando em A, e endereçado a B: r r r procura endereço de rede de B descobre que B é da mesma rede que A camada de enlace remeterá datagrama direamente para B num quadro da camada de enlace m B e A estão diretamente ligados rede dest. próx. rot. 223.1.1 223.1.2 223.1.3 A Nenlaces 223.1.1.4 223.1.1.4 1 2 2 223.1.1.1 223.1.2.1 B 223.1.1.2 223.1.1.4 223.1.1.3 223.1.3.1 223.1.2.9 223.1.3.27 223.1.2.2 E 223.1.3.2 4: Camada de Rede 4a-11 Enviando um datagrama da origem ao destino aampos dados misc 223.1.1.1 223.1.2.2 Origem A, destino E: r r r r r r procura endereço de rede de E E está numa rede diferente A m A e E não ligados diretamente tabela de rotas: próximo roteador na rota para E é B 223.1.1.4 camada de enlace envia datagrama ao roteador 223.1.1.4 num quadro da camada de enlace datagrama chega a 223.1.1.4 continua… rede dest. próx. rot. 223.1.1 223.1.2 223.1.3 Nenlaces 223.1.1.4 223.1.1.4 1 2 2 223.1.1.1 223.1.2.1 223.1.1.2 223.1.1.4 223.1.1.3 223.1.3.1 223.1.2.9 223.1.3.27 223.1.2.2 E 223.1.3.2 4: Camada de Rede 4a-12 Enviando um datagrama da origem ao destino aampos dados misc 223.1.1.1 223.1.2.2 rede dest. 223.1.1 Chegando a 223.1.1.4, destinado a 223.1.2 223.1.3 223.1.2.2 r r r r procura endereço de rede de E A E fica na mesma rede que a interface 223.1.2.9 do roteador m Roteador e E estão diretamente B ligados camada de enlace envia datagrama p/ 223.1.2.2 dentro de quadro de camada de enlace via interface 223.1.2.9 datagrama chega a 223.1.2.2!!! (oba !) próx. rot. Nenl. interface - 1 1 1 223.1.1.4 223.1.2.9 223.1.3.27 223.1.1.1 223.1.2.1 223.1.1.2 223.1.1.4 223.1.1.3 223.1.3.1 223.1.2.9 223.1.3.27 223.1.2.2 E 223.1.3.2 4: Camada de Rede 4a-13 IP: Fragmentação & Remontagem r r cada enlace de rede tem MTU (max.transmission unit) maior tamanho possível de quadro neste enlace. m tipos diferentes de enlace têm MTUs diferentes datagrama IP muito grande dividido (“fragmentado”) dentro da rede m um datagrama vira vários datagramas m “remontado” apenas no destino final m bits do cabeçalho IP usados para identificar, ordenar fragmentos relacionados fragmentação: entrada: um datagrama grande saída: 3 datagramas menores remontagem 4: Camada de Rede 4a-14 ICMP: Internet Control Message Protocol r r r usado por estações, roteadores para comunicar informação s/ camada de rede m relatar erros: estação, rede, porta, protocolo inalcançáveis m pedido/resposta de eco (usado por ping) camada de rede “acima de” IP: m msgs ICMP transportadas em datagramas IP mensagem ICMP: tipo, código mais primeiros 8 bytes do datagrama IP causando erro Tipo 0 3 3 3 3 3 3 4 8 9 10 11 12 Código descrição 0 resposta de eco (ping) 0 rede dest. inalcançável 1 estação dest inalcançável 2 protocolo dest inalcançável 3 porta dest inalcançável 6 rede dest desconhecida 7 estação dest desconhecida 0 abaixar fonte (controle de congestionamento - ñ usado) 0 pedido eco (ping) 0 anúncio de rota 0 descobrir roteador 0 TTL (sobrevida) expirada 0 erro de cabeçalho IP 4: Camada de Rede 4a-15 IPv6 r Motivação inicial: espaço de endereços de 32- bit completamente alocado até 2008. r Motivação adicional : m m m formato do cabeçalho facilita acelerar processamento/re-encaminhamento mudanças no cabeçalho para facilitar QoS novo endereço “anycast”: rota para o “melhor” de vários servidores replicados r format do datagrama IPv6: m cabeçalho de tamanho fixo de 40 bytes m não admite fragmentação 4: Camada de Rede 4a-16 Cabeçalho IPv6 Prioridade: identifica prioridade entre datagramas no fluxo Rótulo do Fluxo: identifica datagramas no mesmo “fluxo” (conceito de “fluxo” mal definido). Próximo cabeçalho: identifica protocolo da camada superior para os dados 4: Camada de Rede 4a-17 Outras mudanças de IPv4 r Checksum: removido completamente para reduzir tempo de processamento a cada roteador r Opções: permitidas, porém fora do cabeçalho, indicadas pelo campo “Próximo Cabeçalho” r ICMPv6: versão nova de ICMP m m tipos adicionais de mensagens, p.ex. “Pacote Muito Grande” funções de gerenciamento de grupo multiponto 4: Camada de Rede 4a-18 Transição de IPv4 para IPv6 r Não todos roteadores podem ser atualizados simultaneamente m m “dias de mudança geral” inviáveis Como a rede pode funcionar com uma mistura de roteadores IPv4 e IPv6? r Duas abordagens propostas: m Pilhas Duais: alguns roteadores com duas pilhas (v6, v4) podem “traduzir” entre formatos m Tunelamento: datagramas IPv6 carregados em datagramas IPv4 entre roteadores IPv4 4: Camada de Rede 4a-19 Abordagem de Pilhas Duais 4: Camada de Rede 4a-20 Tunelamento IPv6 dentro de IPv4 quando necessário 4: Camada de Rede 4a-21