Baixe o app para aproveitar ainda mais
Prévia do material em texto
Nível de Rede Redes de Computadores I 2007/2008 05-11-2007 Universidade do Minho 1 Sumário � Interligação de Redes � Encapsulamento na pilha TCP/IP � Datagramas IP versão 4 (IPv4) � Cabeçalhos IPv4 � Fragmentação e reagrupamento � Endereçamento (IPv4) � Classfull e classless � Subnetting e supernetting � Atribuição dinâmica de endereços (DHCP) � Resolução de endereços nível 2 (ARP) � Mensagens de Controlo (ICMP) � IP versão 6 (IPv6) 05-11-2007 Universidade do Minho 2 Interligação de Redes � Nenhuma das tecnologias existentes de rede local (LAN) é adequada para satisfazer todos os requisitos de comunicações das aplicações. � Nenhuma dessas tecnologias é totalmente escalável: � Os endereços não têm estrutura, resultando em: � dificuldade de distribuição e administração � complexidade no encaminhamento dos PDU, mas… � Não há mecanismos de encaminhamento nos protocolos � Os PDU têm comprimentos limitados; � Os métodos de acesso não suportam grandes distâncias 05-11-2007 Universidade do Minho 3 Interligação de Redes Introdução Questão: Será que para existir um serviço de rede único e global (universal) é necessário adoptar a mesma tecnologia de rede em todos os locais? Ou será possível oferecer serviços de conectividade universal mesmo adoptando diferentes tecnologias locais? É possível a conectividade global entre redes com protocolos locais distintos introduzindo uma camada protocolar superior independente daqueles: A camada protocolar de rede, também chamada de interligação de redes ou de internetworking. 05-11-2007 Universidade do Minho 4 Interligação de Redes Introdução A Interligação de Redes baseia-se na utilização de funcionalidades específicas de rede (realizadas tanto em hardware como em software) que proporcionam um serviço global de interligação de redes locais (LAN) heterogéneas: � Software: protocolos de rede (internetworking) � Hardware: routers (encaminhadores) A maior Rede de Redes que existe: Internet 05-11-2007 Universidade do Minho 5 Interligação de Redes Introdução 05-11-2007 Universidade do Minho 6 Interligação de Redes A pilha TCP/IP � O protocolo do nível de rede mais utilizado é o protocolo de rede usado na Internet: o Internet Protocol (IP), da pilha protocolar TCP/IP � A pilha TCP/IP apresenta como principais características: � Aberta � especificações publicadas e bem conhecidas � abertura completa ao desenvolvimento de código � Portável � independência do sistema operativo e plataforma � quaisquer sistemas podem comunicar � Estável e Robusta � normas testadas ao longo de três décadas e fixas � mas ainda em desenvolvimento e aperfeiçoamento � Suporte global � incluída em todos os sistemas de computação 05-11-2007 Universidade do Minho 7 Ethernet Token Bus Token Ring FDDI Internet Protocol ARP TELNET FTP SMTP DNS SNMP DHCP Ligação Físico Rede Transporte Aplicação Apresentação Sessão ICMPIGMP RTP RTCP Transmission Control Protocol User Datagram Protocol RIP OSPF BGP Interligação de Redes A pilha TCP/IP 05-11-2007 Universidade do Minho 8 Estação origem Dados Segmento TCP Datagrama IP Pacote LLC Trama MAC Estação destino Aplicação TCP IP Ligação Físico Dados Segmento TCP Datagrama IP Pacote LLC PDU Aplicação Meio de transmissão CT CI CL CM CRC CM CRC A hierarquia protocolar por camadas traduz-se no encapsulamento dos PDU: � Na origem, o PDU da camada N+1 é inserido no campo de dados do PDU da camada N � No destino, o PDU da camada N é recuperado do campo de dados do PDU da camada N-1 encapsulam ento de se nc ap su la m en to Interligação de Redes Encapsulamento TCP/IP 05-11-2007 Universidade do Minho 9 IP – Internet Protocol � É um protocolo de interligação de rede, cujo paradigma protocolar é o melhor esforço (best effort): o protocolo esforça-se por entregar os datagramas ao destino mas não o garante (datagramas podem perder-se) � Versões: IPv4 (em uso generalizado), IPv6 (em instalação) � Principais funções: � fornece a unidade elementar de transferência de dados: � o PDU do IP é um datagrama IP � inclui mecanismos para o seu encaminhamento � fragmentação de datagramas: transita em qualquer LAN � incorpora um esquema de endereçamento universal 05-11-2007 Universidade do Minho 10 32 bits Ethernet Data Field Vers HLEN TOS Total Length Identification Flags Fragment Offset Time to Live Protocol Header Checksum Source IP address Destination IP address IP Options (pode ser nulo) Padding IP Datagram Data (até 65536 bytes) DA SA Type0800 IP Header and Data CRC 2 0 b y te s IP – Internet Protocol Formato dos datagramas 05-11-2007 Universidade do Minho 11 IP – Internet Protocol Formato dos datagramas � Vers (4bit): versão do protocolo (valor 4 ou valor 6) � HLEN (4bit): tamanho do cabeçalho em blocos de 32 bits; valor mínimo é 5; � TOS (8bit): dá uma indicação em abstracto dos parâmetros de qualidade de serviço pretendidos (atraso baixo, débito elevado, etc) � Total Length (16bit): tamanho total (cabeçalho+dados) em bytes; (máximo é 65535, mas normalmente não passa dos 1500 bytes) � Identification (16bit): identificador único por datagrama e por cada conexão que ajuda a identificar todos os fragmentos que devem ser reagrupados � Flags (3bit): Bit 0 = 0 (reservado); Bit 1 = DF (don’t fragment); Bit 2 = MF (more fragments); � Fragment Offset (13bit): define a que parte do datagrama pertence este fragmento e mede-se em blocos de 64 bits (8 bytes) 05-11-2007 Universidade do Minho 12 IP – Internet Protocol Formato dos datagramas � Time To Live (8bit): máximo tempo de vida do datagrama que é decrementado a cada salto; quando o valor é zero o datagrama é destruído; � Protocol (8bit): usado para identificar qual o protocolo da camada acima a quem devem ser entregues os dados transportados � Header Checksum (16bit): soma de verificação em complemento para 1 do cabeçalho (recalculado em cada salto por causa do TTL) � IP Options (opcional e de tamanho variável): - Security - Loose Source Rounting - Strict Source Routing - Record Route - Stream ID - Internet Timestamp 05-11-2007 Universidade do Minho 13 � As ligações de rede têm diferentes MTU (max.transfer unit) – tamanho máximo da trama da camada de ligação � Diferentes tipos de ligação implicam diferentes MTUs � Um datagrama IP “demasiado grande” é dividido em vários fragmentos dentro da rede � Um datagrama transforma-se em vários datagramas � A junção é efectuada apenas no nó destino � Existem no cabeçalho IP um conjunto de campos para identificar e ordenar fragmentos. fragmentafragmentafragmentafragmentaççççãoãoãoão entrada: um grande datagrama saída: três pequenos datagrams reagrupamento Fonte: Computer Networking: A Top-Down Approach Featuring the Internet, J. Kurose, Addison-Wesley, 2001 IP – Internet Protocol Fragmentação e reagrupamento 05-11-2007 Universidade do Minho 14 ID =x offset =0 fragflag =0 length =4000 ID =x offset =0 fragflag =1 length =1500 ID =x offset =1480 fragflag =1 length =1500 ID =x offset =2960 fragflag =0 length =1040 Um grande datagrama transforma-se em vários pequenos datagramas IP – Internet Protocol Fragmentação e reagrupamento 05-11-2007 Universidade do Minho 15 VERS HLEN Time to Live Protocol Header Checksum IP Options (may be null) Padding IP Datagram Data (up to 65,535 bytes) TOS Total Length Identification Flags Fragment Offset Source IP address Destination IP address IP – Internet Protocol Endereçamento05-11-2007 Universidade do Minho 16 � Endereço IP: identificador de 32- bits por interface do sistema terminal ou encaminhador � Interface: ligação entre o sistema terminal ou o encaminhador e a ligação física � Os encaminhadores têm tipicamente múltiplas interfaces � Os sistemas terminais podem ter múltiplas interfaces � Os endereços IP associam-se a interfaces (não a sistemas terminais ou encaminhadores) 223.1.1.1 223.1.1.2 223.1.1.3 223.1.1.4 223.1.2.9 223.1.2.2 223.1.2.1 223.1.3.2223.1.3.1 223.1.3.27 Fonte: Computer Networking: A Top-Down Approach Featuring the Internet, J. Kurose, Addison-Wesley, 2001 Interligações de rede com 3 redes IP IP – Internet Protocol Endereçamento 05-11-2007 Universidade do Minho 17 � Endereço IP: � Parte da Rede (bits mais significativos � Parte do Sistema Terminal (bits menos significativos) � O que é uma Rede ? (perspectiva dos endereços IP) � interfaces de dispositivos com a mesma “Parte de Rede” � mutuamente e fisicamente atingíveis sem intervenção de um encaminhador 223.1.1.1 = 11011111 00000001 00000001 00000001 223 1 11 IP – Internet Protocol Endereçamento 05-11-2007 Universidade do Minho 18 Sistema com 6 redes interligadas 223.1.1.1 223.1.1.3 223.1.1.4 223.1.2.2223.1.2.1 223.1.2.6 223.1.3.2223.1.3.1 223.1.3.27 223.1.1.2 223.1.7.0 223.1.7.1 223.1.8.0223.1.8.1 223.1.9.1 223.1.9.2 Endereçamento IP Fonte: Computer Networking: A Top-Down Approach Featuring the Internet, J. Kurose, Addison-Wesley, 2001 IP – Internet Protocol Endereçamento 05-11-2007 Universidade do Minho 19 130.1.4.0130.1.4.0 130.1.1.0130.1.1.0 130.1.3.0130.1.3.0 130.1.1.0130.1.1.0 Não são permitidas subredes não-contiguas 130.1.2.0130.1.2.0 Este segmento (subrede) apenas tem duas estações (os dois routers) 130.1.2.50130.1.2.50 130.1.2.82130.1.2.82 130.1.1.254130.1.1.254 130.1.3.49130.1.3.49 130.1.3.200130.1.3.200 IP – Internet Protocol Endereçamento 05-11-2007 Universidade do Minho 20 Router Estações 205.1.20.49 205.1.5.1 205.1.10.1 205.1.20.1 205.1.5.0 intf0 205.1.10.0 intf0 205.1.20.0 intf0 A estação 205.1.20.1 remete ao router os datagramas destinados à estação 205.1.10.1 Múltiplas subredes no mesmo interface Tabela de encaminhamento do router para este interface intf0 IP – Internet Protocol Endereçamento 05-11-2007 Universidade do Minho 21 IP – Internet Protocol Endereçamento � Endereçamento por classes (ou Classful ) � esquema original, baseado na RFC 791 � usa os primeiros bits como identificadores de classe � Endereçamento sem classes (ou Classless) � não considera os bits de classe utilizando uma máscara de 32 bits para determinar o endereço de rede � permite encaminhamento mais eficiente por agregação de rotas, designado por CIDR (Classless Internet Domain Routing) � tabelas de encaminhamento mais pequenas � as rotas são agregadas por grupos de endereços adjacentes � usado pelas tabelas de encaminhamento de ISPs 05-11-2007 Universidade do Minho 22 Identificador da classe Parte do Endereço de Rede Parte do Endereço de Estação 11110 Classe E – Reservado para utilização futura 0 7 bits de endereço de rede 24 bits de endereço de estação Classe A 10 14 bits de endereço de rede 16 bits de endereço de estação 110 21 bits de endereço de rede 8 bits endereço de estação 1110 Endereços Multicast no intervalo 224.0.0.0 - 239.255.255.255 Classe B Classe C Classe D Classe E IP – Internet Protocol Endereçamento (Classfull) 05-11-2007 Universidade do Minho 23 Classe A B C D redes (1º byte) 126 (1-126) 16.384 (128-191) 2.097.152 (192-223) hosts/rede 16.277.214 65.354 254 reservado host a 0s ou 1s host a 0s ou 1s host a 0s ou 1s (224-239) Endereços IPv4 por classes IP – Internet Protocol Endereçamento (Classfull) 05-11-2007 Universidade do Minho 24 IP – Internet Protocol Endereçamento (Classfull) Máscara de endereço � Máscara: padrão que conjugado com o endereço IP, devolve a parte do endereço de rede (ou sub-rede) � No endereçamento por classes as máscaras são: � Classe A: 11111111.00000000.00000000.00000000 notação decimal: 255.0.0.0 notação CIDR: /8 � Classe B: 11111111.11111111.00000000.00000000 notação decimal: 255.255.0.0 notação CIDR: /16 � Classe C: 11111111.11111111.11111111.00000000 notação decimal: 255.255.255.0 notação CIDR: /24 � No endereçamento sem classes as máscaras têm qualquer outro valor 05-11-2007 Universidade do Minho 25 IP – Internet Protocol Endereçamento (Classfull) Restrições a Endereços IP � Endereços reservados: � os primeiros 4 bits não podem ser 1 � 127.x.x.x é o endereço reservado para loopback � bits de host a 0s ou 1s são reservados (rede ou broadcast) � bits de subnet a 0s ou 1s são reservados � Endereços privados: atribuídos para internets privadas (sem conectividade global, não devem ser visíveis nem são encaminhados na internet exterior), RFC1918: � bloco 192.168.0.0 - 192.168.255.255 (prefixo 192.168 /16) � bloco 172.16.0.0 - 172.31.255.255 (prefixo 172.16 /12) � bloco 10.0.0.0 - 10.255.255.255 (prefixo 10 /8) 05-11-2007 Universidade do Minho 26 � Endereçamento por classes (classfull): � Uso ineficiente do espaço de endereçamento, exaustão de espaço � Ex: uma classe B aloca 65K hosts mesmo que existam apenas 2K hosts! � Enderecamento sem classes (classless): � Parte de rede (do endereço) com comprimento arbitrário � Formato: a.b.c.d/x, em que x é o nº de bits correspondente à parte de rede 11001000 00010111 00010000 00000000 parte de rede parte de host 200.23.16.0/23 IP – Internet Protocol Endereçamento (Classless) 05-11-2007 Universidade do Minho 27 Endereçamento sem classes � Considere-se o endereço IP 130.1.5.1 � é o endereço da estação 5.1 da rede 130.1.0.0 (classe B) � Considere-se o endereço IP 130.1.5.1/24 � é o endereço da estação 1 da sub-rede 130.1.5.0 Rede Estação Máscara de subrede Rede Subrede Estação 130.1 255.255.255.0 130.1 5 15.1 (máscara com multiplo de 8 bits) interpretação original por classe interpretação sem classe (CIDR) IP – Internet Protocol Endereçamento (Classless) 05-11-2007 Universidade do Minho 28 130130 11 99 11 10 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 1 Subrede Estação 11111111.11111111.11111000.00000000 Máscara de Subnet 255.255.248.0 (máscara com 21 bits) � Considere-se o endereço IP 130.1.9.1/21 � é o endereço da estação 257 da sub-rede 130.1.8.0 IP – Internet Protocol Endereçamento (Classless) 05-11-2007 Universidade do Minho 29 Sub-redes (Subnetting) � permite melhor aproveitamento, organização e gestão do espaço de endereços � introduz outro nível hierárquico para routing internet localinternet local 130.1.0.0130.1.0.0 internetinternet exteriorexterior 130.1.1.0130.1.1.0 130.1.2.0130.1.2.0 130.1.3.0130.1.3.0 130.1.254.0130.1.254.0 IP – Internet Protocol Endereçamento (Subnetting) 05-11-2007 Universidade do Minho 30 Exercício Subnetting No exemplo anterior, em vez do endereço classe B 130.1.0.0, seria possível usar o endereço 192.168.192.0? Justifique convenientemente. internet localinternet local 192.168.192.0192.168.192.0 internetinternet exteriorexterior AA BB CC DD Exercício 05-11-2007 Universidade do Minho 31 Exercícios � Considere o endereço IP 196.34.201.137. Se a usarmos a máscara de rede 255.255.255.192, quais são os endereços de rede e de difusão. � Considere o endereço IP da Classe B 140.140.0.0 e determine a máscara de rede, que com base neste endereço, cria um conjunto de subredes tal que cada uma delas pode ser usadapara endereçar 2046 computadores. Quantas subredes pode criar? � Considere uma empresa à qual foi atribuído o endereço de rede 220.168.49.0. Proponha um esquema de endereçamento que permita definir uma subrede com 50 computadores, três subredes com 20 computadores cada e uma pequena subrede para testes com 10 computadores. Indique as máscaras de rede e a gama de endereços válidos para cada subrede. 05-11-2007 Universidade do Minho 32 10.0.0.1 10.0.0.2 10.0.0.3 10.0.0.4 138.76.29.7 Rede local (ex: rede lá de casa) 10.0.0/24 Internet Todos os datagramas nesta rede contêm, como habitualmente endereços de origem e/ou de destino na gama disponível 10.0.0/24 Todos os datagramas que saiem para a Internet são forçados a usar o mesmo endereço de origem: 138.76.29.7, e números de porta origem distintos IP – Internet Protocol Reescrita de endereços (NAT: Network Address Translation) 05-11-2007 Universidade do Minho 33 IP – Internet Protocol Reescrita de endereços (NAT: Network Address Translation) � Motivação para a rede local usar apenas um endereço Internet conhecido com acesso global: � Não é preciso gastar uma gama de endereços ao ISP: basta um! � Podem-se mudar os endereços da rede a qualquer momento sem ter de avisar o mundo inteiro desse facto � Pode-se mudar de ISP sem mudar de endereços na rede local � Os equipamentos da rede local não são directamente endereçáveis do exterior (protecção de segurança acrescida!) 05-11-2007 Universidade do Minho 34 Implementação: router NAT � Datagramas que saiem: substituir o par (Endereço IP Origem, Nº Porta) de todos os datagramas por (Endereço IP NAT, Novo Nº de Porta) . . . os sistemas no exterior vão naturalmente endereçar os datagramas de resposta para (Endereço IP NAT, Novo Nº de Porta) � Guardar numa tabela NAT todas as trocas que foramfeitas de pares (Endereço IP Origem, Nº Porta) para (Endereço IP NAT, Novo Nº de Porta) � Datagramas que chegam: substituir (Endereço IP, Porta) pelo endereço interno (Endereço IP Origem, Porta Origem) aramazenado na tabela NAT IP – Internet Protocol Reescrita de endereços (NAT: Network Address Translation) 05-11-2007 Universidade do Minho 35 10.0.0.1 10.0.0.2 10.0.0.3 S: 10.0.0.1, 3345 D: 128.119.40.186, 80 1 10.0.0.4 138.76.29.7 1: Sistema 10.0.0.1 envia datagrama para 128.119.40, 80 NAT translation table WAN side addr LAN side addr 138.76.29.7, 5001 10.0.0.1, 3345 …… …… S: 128.119.40.186, 80 D: 10.0.0.1, 3345 4 S: 138.76.29.7, 5001 D: 128.119.40.186, 802 2: router NAT muda endereço origem do datagrama de 10.0.0.1, 3345 para 138.76.29.7, 5001, e actualiza tabela S: 128.119.40.186, 80 D: 138.76.29.7, 5001 3 3: Chega resposta endereçada a: 138.76.29.7, 5001 4: router NAT muda endereço de destino de 138.76.29.7, 5001 para 10.0.0.1, 3345 IP – Internet Protocol Reescrita de endereços (NAT: Network Address Translation) 05-11-2007 Universidade do Minho 36 � Porta é um campo da camada de transporte com 16-bit � 60,000 conexões simultâneas com um único endereço! � NAT é muito controverso: � Viola independência entre camadas: � routers só devem poder mexer nos cabeçalhos de nível 3! � Viola o conceito fim-a-fim � Estado intermédio por conexão � As aplicações (P2P e outras) são obrigadas a ter o NAT em consideração… � Não é a forma certa de resolver a escassez de endereços (IPv6) � Como endereçar servidores internos? (e-mail, web, etc) IP – Internet Protocol Reescrita de endereços (NAT: Network Address Translation) 05-11-2007 Universidade do Minho 37 Hosts (parte de host): � hard-coded em ficheiro de sistema p/ admin � DHCP: Dynamic Host Configuration Protocol: obter endereço dinamicamente: “plug-and-play” � host faz broadcast msg “DHCP discover” � servidor DHCP responde c/ msg “DHCP offer” � host pede endereço IP: msg “DHCP request” � servidor DHCP envia endereço: msg “DHCP ack” IP – Internet Protocol Endereçamento (Alocação dinâmica) 05-11-2007 Universidade do Minho 38 DHCP request IP – Internet Protocol Endereçamento (Alocação dinâmica) Servidor DHCP: 223.1.2.5 Cliente time DHCP discover src : 0.0.0.0, 68 dest.: 255.255.255.255,67 yiaddr: 0.0.0.0 transaction ID: 654 DHCP offer src: 223.1.2.5, 67 dest: 255.255.255.255, 68 yiaddr: 223.1.2.4 transaction ID: 654 Lifetime: 3600 secs src: 0.0.0.0, 68 dest:: 255.255.255.255, 67 yiaddr: 223.1.2.4 transaction ID: 655 Lifetime: 3600 secs DHCP ACK src: 223.1.2.5, 67 dest: 255.255.255.255, 68 yiaddrr: 223.1.2.4 transaction ID: 655 Lifetime: 3600 secs 05-11-2007 Universidade do Minho 39 IP – Internet Protocol Endereçamento (Alocação dinâmica) � O servidor DHCP deve estar na mesma rede que o cliente. Se não estiver, é necessário um agente DHCP-Relay (tipicamente um router) que sirva de intermediário… � Um cliente pode receber ofertas de mais do que um servidor DHCP, mas só pode escolher uma delas; a mensagem DHCP Request é enviada de novo para o endereço de difusão para todos saberem qual foi a oferta escolhida e anularem as reservas que fizeram � A mensagem de ACK é a única enviada por unicast, pois o mapeamento entre endereço IP e endereço MAC já foi efectivado; � Uma curiosidade: O DHCP é a terceira geração de protocolos de configuração de sistemas; Pode ser visto como uma extensão ao BOOTP (protocolo de arranque para sistemas sem disco) que por sua vez deriva do protocolo RARP (Reverse Address Resolution Protocol) 05-11-2007 Universidade do Minho 40 Network (parte de rede): � Alocado via espaço de endereçamento do ISP Bloco do ISP 11001000 00010111 00010000 00000000 200.23.16.0/20 Organização 0 11001000 00010111 00010000 00000000 200.23.16.0/23 Organização 1 11001000 00010111 00010010 00000000 200.23.18.0/23 Organização 2 11001000 00010111 00010100 00000000 200.23.20.0/23 ... ….. …. …. Organização 7 11001000 00010111 00011110 00000000 200.23.30.0/23 IP – Internet Protocol Endereçamento (supernetting) 05-11-2007 Universidade do Minho 41 “Qualquer endereço começado por 200.23.16.0/20” 200.23.16.0/23 200.23.18.0/23 200.23.30.0/23 ISP X Organização 0 Organização 7 Internet Organização 1 ISPs-R-Us Começado por 199.31.0.0/16” 200.23.20.0/23 Organização 2 . .. . .. Endereçamento Hierárquico permite anúncios eficientes de informação de encaminhamento: IP – Internet Protocol Endereçamento hierárquico – agregação de rotas 05-11-2007 Universidade do Minho 42 ISPs-R-Us tem uma rota mais específica para a Organização 1 200.23.16.0/23 200.23.18.0/23 200.23.30.0/23 ISP X Organização 0 Organização 7 Internet Organização 1 ISPs-R-Us Começado por 199.31.0.0/16 ou 200.23.18.0/23 200.23.20.0/23 Organização 2 . . . . . . “Qualquer endereço começado por 200.23.16.0/20” IP – Internet Protocol Endereçamento hierárquico – rotas mais específicas 05-11-2007 Universidade do Minho 43 Datagrama IP: 223.1.1.1 223.1.1.2 223.1.1.3 223.1.1.4 223.1.2.9 223.1.2.2 223.1.2.1 223.1.3.2223.1.3.1 223.1.3.27 A B E misc fields source IP addr dest IP addr data � O datagrama não é modificado, desde a origem até ao destino Dest. Net. next router #hops 223.1.1 1 223.1.2 223.1.1.4 2 223.1.3 223.1.1.4 2 Tabela encaminhamento de A Fonte: Computer Networking: A Top-Down Approach Featuring the Internet, J. Kurose, Addison-Wesley, 2001 IP – Internet Protocol Encaminhamento – da origem ao destino (I)05-11-2007 Universidade do Minho 44 223.1.1.1 223.1.1.2 223.1.1.3 223.1.1.4 223.1.2.9 223.1.2.2 223.1.2.1 223.1.3.2223.1.3.1 223.1.3.27 A B E Partindo de A, datagrama IP endereçado a B: � Buscar endereço de rede de B � B está na mesma rede de A � datagrama directamente para B � B e A estão ligados directamente Dest. Net. next router #hops 223.1.1 1 223.1.2 223.1.1.4 2 223.1.3 223.1.1.4 2 misc fields 223.1.1.1 223.1.1.3 data Fonte: Computer Networking: A Top-Down Approach Featuring the Internet, J. Kurose, Addison-Wesley, 2001 IP – Internet Protocol Encaminhamento – da origem ao destino (II) 05-11-2007 Universidade do Minho 45 223.1.1.1 223.1.1.2 223.1.1.3 223.1.1.4 223.1.2.9 223.1.2.2 223.1.2.1 223.1.3.2223.1.3.1 223.1.3.27 A B E Dest. Net. next router #hops 223.1.1 1 223.1.2 223.1.1.4 2 223.1.3 223.1.1.4 2 Partindo de A, destino E: � Busca endereço de rede de E � E está numa rede diferente � A, E sem ligação directa � Tabela encaminhamento: próximo nó é 223.1.1.4 � envia datagrama para router 223.1.1.4 � datagrama chega a 223.1.1.4 � …. misc fields 223.1.1.1 223.1.2.2 data Fonte: Computer Networking: A Top-Down Approach Featuring the Internet, J. Kurose, Addison-Wesley, 2001 IP – Internet Protocol Encaminhamento – da origem ao destino (III) 05-11-2007 Universidade do Minho 46 223.1.1.1 223.1.1.2 223.1.1.3 223.1.1.4 223.1.2.9 223.1.2.2 223.1.2.1 223.1.3.2223.1.3.1 223.1.3.27 A B E Chega ao nó 223.1.4, com destino 223.1.2.2 � Busca endereço de rede de E � E está na mesma rede da interface 223.1.2.9 � Encaminhador e nó E ligados directamente � envia datagrama para 223.1.2.2 ( via interface 223.1.2.9) misc fields 223.1.1.1 223.1.2.2 data network router #hops interface 223.1.1 - 1 223.1.1.4 223.1.2 - 1 223.1.2.9 223.1.3 - 1 223.1.3.27 Dest. next Fonte: Computer Networking: A Top-Down Approach Featuring the Internet, J. Kurose, Addison-Wesley, 2001 IP – Internet Protocol Encaminhamento – da origem ao destino (IV) 05-11-2007 Universidade do Minho 47 Construa a tabela de encaminhamento de cada um dos encaminhadores (A, B e C) da rede ilustrada. internet localinternet local 130.1.0.0130.1.0.0 internetinternet exteriorexterior AA BB CC Exercício 05-11-2007 Universidade do Minho 48 Observe e interprete a tabela de encaminhamento do seu sistema. Usar o comando “netstat –n –r “ em qualquer sistema operativo. Exercício 05-11-2007 Universidade do Minho 49 TCP/IP ARP (Protocolo de Resolução de Endereços) � ARP (Address Resolution Protocol) mapeia um endereço de rede no endereço MAC (48 bytes) que lhe corresponde. � RFC 826: An Ethernet Address Resolution Protocol � Operação: � local à LAN � não usa encapsulamento IP � o EtherType ARP é: 0x0806 � ARP-PDUs: ARP Request e ARP Reply 05-11-2007 Universidade do Minho 50 DA SA TF CRCData Endereço Protocolar da estação de destino (target) Endereço de Hardware da estação de destino (target) Endereço Protocolar da estação de origem (sender) Endereço de Hardware da estação de origem (sender) Operação Comp do endereço protocolarComp do endereço hardware Tipo de protocolo Tipo de hardware DA - Destination Address SA - Source Address TF - Type Field 2 bytes 2 1+1 2 6 4 6 4 2 8 b y te s TCP/IP ARP (Protocolo de Resolução de Endereços) 05-11-2007 Universidade do Minho 51 � ARP Request é enviado em broadcast � ARP Reply é enviado em unicast à estação requerente, que mantém temporariamente a resolução na cache de ARP 1.ARP Request 3.Aqui está o meu Endereço MAC 129.1.1.1 B C 129.1.1.4Eu não Eu não 2.Sou eu2.ARP Request Ignorado 2.ARP Request Ignorado 4.ARP Reply Aceite 1.Quem tem o endereço MAC da estação 129.1.1.4? [Naugle98] 3.ARP Reply TCP/IP ARP (Protocolo de Resolução de Endereços) 05-11-2007 Universidade do Minho 52 � Protocolo usado por sistemas terminais e encaminhadores para trocarem informação do nível de rede � reportar erros: nó, rede, porta ou protocolo inatingíveis, � echo request/reply (utilizado pelo ping) � TTL expired (usado pelo traceroute) � Camada de rede “sobre” o IP: � Mensagens ICMP encapsuladas em datagramas IP � Mensagem ICMP: tipo, código, os primeiros 8 primeiros bytes do datagrama IP responsável pelo erro Type Code description 0 0 echo reply (ping) 3 0 dest. network unreachable 3 1 dest host unreachable 3 2 dest protocol unreachable 3 3 dest port unreachable 3 6 dest network unknown 3 7 dest host unknown 4 0 source quench (congestion control - not used) 8 0 echo request (ping) 9 0 route advertisement 10 0 router discovery 11 0 TTL expired 12 0 bad IP header TCP/IP ICMP (Internet Control Message Protocol ) 05-11-2007 Universidade do Minho 53 DA SA TF CRCIP Header Mensagem ICMP Tipo (8) Código (8) Verificação de paridade (16) Número de sequência Enventuais dados ICMP TCP/IP ICMP (Internet Control Message Protocol ) 05-11-2007 Universidade do Minho 54 192.1.1.1 192.1.1.2 192.1.2.1192.1.2.2 PING 192.1.1.2 Echo Request Echo Reply TCP/IP ICMP (Internet Control Message Protocol ) 05-11-2007 Universidade do Minho 55 Alguns comandos: % ifconfig –a % arp –a % ping <host> % netstat –n –r Exercício exemplo: Começar por ver a tabela de ARP e a tabela de routing… Activar o Ethereal e pô-lo a capturar todos os pacotes… Fazer ping para um sistema da mesma rede ainda não contactado… Observar a troca de mensagens ARP e o resultado na tabela de ARP Exercício 05-11-2007 Universidade do Minho 56 Versões IP � IP v 1-3 Definidas e substituídas � IP v4 – Versão actual � IP v5 – streams protocol (não usado, diferentes objectivos) � IP v6 – Desenhado para substituir o IPv4 � Durante o desenvolvimento designava-se por IPng (Next Generation) 05-11-2007 Universidade do Minho 57 � Motivação inicial: Espaço de endereços de 32 bits completamente alocado em 2008 � Motivação Adicional: � Formato do cabeçalho contribui para o aumento da velocidade de processamento e re-envio dos pacotes. � Alterações no formato do cabeçalho para facilitar a implementação de QoS � Um novo tipo de endereço: endereço “anycast”, que possibilita o envio de informação para um nó dentro de um grupo � Formato do datagrama � Cabeçalho com o tamanho fixo (40 bytes) � Não é permitida a fragmentação de pacotes (excepto na origem) IPv6 05-11-2007 Universidade do Minho 58 0 bits 31 Ver IHL Total Length Identifier Flags Fragment Offset 32 bit Source Address 32 bit Destination Address 4 8 2416 Service Type Options and Padding Time to Live Header ChecksumProtocol RemovedChanged Cabeçalho IPv4 20 bytes + opções : 13 campos, incluindo 3 flag bits 05-11-2007 Universidade do Minho 59 0 31 Version Class Flow Label Payload Length Next Header Hop Limit 128 bit Source Address 128 bit Destination Address 4 12 2416 Cabeçalho IPv6 40 bytes, 8 campos 05-11-2007 Universidade do Minho 60 � Version � 4 bits � Priority/Class � 8 bits � Espírito semelhante ao do TOS no IPv4 � Permite atribuir diferentes prioridades a cada datagrama � Flow Label � 24 bits � Identifica um fluxo individual de tráfego que requer o mesmo tratamento da rede. �Pode ser usado com o RSVP (protocolo de reserva de recursos a estudar mais tarde) Novos Campos do IPv6 05-11-2007 Universidade do Minho 61 Campos que se mantêm � Payload length � Substitui o total length; tamanho da “carga” + cabeçalhos opcionais; � Next Header � Semelhante ao campo Protocol do IPv4 (usado para identificar o protocolo de Transporte) mas também protocolos de nível 3 � As opções do IPv6 são também tratadas com este campo, identificando cabeçalhos adicionais… � Hop Limit � Semelhante ao campo Time-To-Live do IPv4, mas agora definitivamente encarado como um número limite de saltos… 05-11-2007 Universidade do Minho 62 Outras diferenças entre o IPv6 e o IPv4 � Checksum: retirado inteiramente para reduzir o tempo de processamento em cada nó � Opções: são permitidas mas fora do cabeçalho � ICMPv6: uma nova versão do protocolo ICMP � Novos tipos de mensagens, por exemplo. “Packet Too Big” � multicast group management functions � Procura agrupar as funções que existiam no ICMPv4 (informação e erro) com as de resolução de endereços (ARP no IPv4) e a gestão de grupos multicast (IGMP no IPv4); é também usado no processo de auto-configuração stateless; 05-11-2007 Universidade do Minho 63 Opções do IPv6 � Extensões ao cabeçalho � 0 - hop-by-hop Option Header � 43 - Routing Header � 44 - Fragmentation Header � 51 - Authentication Header � 59 - No Next Header � 60 - Destination Options Header 05-11-2007 Universidade do Minho 64 Opções do IPv6 � Extensões: Hop-by-Hop Option Header � Next header � Header extension length � Options � Jumbo payload � Pacotes com tamanho superior a 216 = 65,535 bytes (acima de 4 biliões!) � Router alert � Avisa o router que os pacotes lhe interessam, chamando a sua atenção para eles; os que não incluem esta opção são simplesmente reenviados; � Inclui suporte para reserva de recursos (RSVP) 05-11-2007 Universidade do Minho 65 Opções do IPv6 � Extensões: Fragment Header � A fragmentação só é admitida no sistema origem! � Não ocorre fragmentação nos routers intermédios � O sistema origem deve de executar procedimentos de descoberta do percurso para encontrar o MTU (Maximum transfer unit) mínimo do percurso e fragmentar os pacotes de acordo com esse MTU � O MTU mínimo por defeito é 1280 octetos � Campos: Next Header(8bits), reserved(8bits), Fragment Offset(13bits), Reserved(2bit), More Flag(1bit), Identification(32bits) 05-11-2007 Universidade do Minho 66 Opções do IPv6 � Extensões: Routing Header � Permite encaminhamento determinado pelo origem, tal como opção semelhante existente no IPv4; � Cabeçalho inclui lista de routers intermédios a serem visitados no percurso; � Campos: Next Header(8bits), Header Extension Length(8bits), Routing Type(8bits), Segments Left(8bits) 05-11-2007 Universidade do Minho 67 IPv6 Header Next = TCP TCP Header IPv6 Header Next = Routing TCP HeaderRouting Hdr Next = TCP IPv6 Header Next = Security TCP HeaderSecurity Hdr Next = Frag Application Data Application Data Fragment Hdr Next = TCP Data Frag Extensões ao cabeçalho IPv6 05-11-2007 Universidade do Minho 68 IPv6: melhor desempenho � Tamanho fixo do cabeçalho � Cabeçalho com menor número de campos e sem checksum � Permite um processamento mais rápido dos pacotes � Controlo de Erros poderá ser efectuado pelas camadas superiores � Processamento Eficiente das Opções � Os diferentes campos só são processados se a opção estiver presente � A maior parte das opções só são processadas no nó destino � Não há fragmentação no interior da rede 05-11-2007 Universidade do Minho 69 IPv6 – Modelo de Endereçamento Link-LocalSite-LocalGlobal � Os endereços são atribuídos às interfaces de rede � À semelhança do que acontece no IPv4 � Uma interface pode ter múltiplos endereços � Os endereços têm um âmbito � Link Local � Site Local � Global � Os endereços têm um tempo de vida 05-11-2007 Universidade do Minho 70 Endereços IPv6 � 128 bits = 6.65 x 1023 endereços de rede para cada m2 da superfície da Terra. � Formato = 8 partes de 16 bits que pode ser abreviado 1) formato normal FEDC:BA98:7654:3210:FEDC:BA98:7654:3210 2) Os zeros à esquerda não são necessários 1080:0:0:0:8:800:200C:417A 3) 16 bits consecutivos em zero são abreviados com :: Seguindo esta regra, uma única sequência de vários blocos de 16 a zero pode ser abreviada: 1080::8:800:200C:417A 05-11-2007 Universidade do Minho 71 Endereços � Endereços Flexíveis � Constituídos por duas partes de tamanho variável: o prefixo e a identificação da interface � Exemplos de representação de prefixos: � 4000::/3 provider-based unicast address � 5A00::/8 atribuído pela InterNIC � 5A01:0200::/24 fornecedor de serviço 0x0102 � 5A01:0203:0400::/40 tipo de assinante 0x0340 � 5A01:0203:0405::/48 assinante 0x05 � 5A01:0203:0405:0607:0809::/80 sub-rede 0x06070809 05-11-2007 Universidade do Minho 72 Endereços IPv6 � Para evitar uma explosão nas tabelas de encaminhamento é usado endereçamento hierárquico � Os bits mais significativos representam o nível mais alto da hierarquia. � Exemplo: � 3 bits = formato do prefixo � 5 bits = identificação da autoridade de registo � 16 bits = identificador do fornecedor de serviço � 16 bits = tipo de assinante � 8 bits = identificador do assinante � 32 bits = identificador da subrede � bits restantes definem um sistema particular na subrede 05-11-2007 Universidade do Minho 73 Endereços Especiais 0::/8 0000 0000 reserved 100::/8 0000 0001 unassigned 200::/7 0000 001 ISO network address 400::/7 0000 010 NOVEL 4000::/3 010 provider based unicast 8000::/3 100 geografic based unicast FE80::/10 1111 1110 10 Local link address FEC0::/10 1111 1110 11 Site local address FF00::/8 1111 1111 Multicast address Loopback 0::1 05-11-2007 Universidade do Minho 74 Endereços Especiais � Previstos dois tipos especiais de endereços IPv6 para suportar a transição de IPv4 para IPv6 � IPv4 - compatível � pode ser convertido de e para o formato IPv4 � formados adicionando-se 96 bits em zero ao endereço de 32 bits � Exemplo: IPv4 = 1.2.3.4 IPv6= ::0102:0304 (ou ::1.2.3.4) � IPv4 - mapeado � indicam sistemas que não suportam IPv6 � usado para que sistemas IPv6 comuniquem com sistemas que só usam IPv4. � Adiciona-se 80 bits em zero, 16 bits em um aos 32 originais � Exemplo: IPv4 = 4.3.2.1 IPv6 = ::FFFF:0403:0201 (ou ::FFFF:4.3.2.1) 05-11-2007 Universidade do Minho 75 � Auto-configuração (plug-and-play). � O primeiro endereço a ser obtido é o endereço de local link. � Tem um formato genérico do tipo FE80:0:0:0:0:xxxx:xxxx:xxxx; � A parte da identificação da interface é obtida com base no seu endereço de nível 2 � Este endereço permite uma comunicação imediata com todos os sistemas existentes na rede local � A partir daí e através de mensagens ICMPv6 trocadas entre o sistema terminal e o encaminhador da rede local são obtidos os outros endereços. � O encaminhador anuncia o prefixo que é concatenado com o endereço de nível 2 de forma a obter-se um endereço global único. � Outra alternativa passa pela utilização do DHCP (autoconfiguração statefull) Atribuição dos Endereços em IPv6 05-11-2007 Universidade do Minho 76 � Passos da auto-configuração stateless: 1. Construir um endereço único de âmbito Link-Local para o interface: � Os primeiros 10 bits são “1111 1110 10”; seguem-se 54 zeros; � Os últimos 64 bits são inventados ou deduzidos do MAC Address, inserindo FF-FE no meio do endereço MAC; Mac: 39-A7-94-07-CB-D0 Parte local: 3BA7:94FF:FE07:CBD0 O 7º bit do1º byte é também mudado para 1 (bit universal/local) 2. Testar se o endereço é único: � Enviar uma mensagem ICMPv6 Neighbor-Discovery com endereço origem :: e destino o endereço criado, para verificar se obtém resposta; Se o endereço estiver atribuído recebe Neighbor-Advertisement; 3. Assumir o endereço Link-Local, caso o teste passe; Atribuição dos Endereços em IPv6 05-11-2007 Universidade do Minho 77 � Passos da auto-configuração stateless: 4. Contactar o router local com mensagem ICMPv6 Router-Discovery: � Os router anunciam-se periodicamente com Router-Advertisement, mas essas mensagens podem ser solicitadas com pedido explícito Router-Discovery 5. Seguir as recomendações do router local: � Endereço do servidor DHCPv6 a contactar para prosseguir configuração statefull � Envio de um conjunto de prefixos a juntar à parte local do endereço formando novos endereços IPv6 6. Configuração de endereços de âmbito Site-Local e Global com base nos endereços fornecidos Atribuição dos Endereços em IPv6 05-11-2007 Universidade do Minho 78 � Maior Espaço de Endereçamento � Um datagrama mais eficiente e extensível � Encaminhamento eficiente através da agregação de rotas � Auto-configuração � Segurança Vantagens do IPv6 05-11-2007 Universidade do Minho 79 Transição do IPv4 para o IPv6 � Nem todos os encaminhadores podem ser actualizados simultaneamente � sem “flag days” (será em 2010?) � De que forma será possível ter a rede a funcionar simultaneamente com encaminhadores IPv6 e IPv4? � Duas abordagens possíveis � Stack Dupla: alguns encaminhadores implementam as duas stacks e podem converter o formato IPv4 em IPv6 e vice-versa � Túneis: Entre encaminhadores IPv4, o datagrama IPv6 é transportado na parte dos dados do datagrama IPv4 05-11-2007 Universidade do Minho 80 Stack Dupla Fonte: Computer Networking: A Top-Down Approach Featuring the Internet, J. Kurose, Addison-Wesley, 2001 05-11-2007 Universidade do Minho 81 Túneis IPv6 “encapsulado” no IPv4 sempre que necessário Fonte: Computer Networking: A Top-Down Approach Featuring the Internet, J. Kurose, Addison-Wesley, 2001 05-11-2007 Universidade do Minho 82 Exercício � Considere a topologia apresentada na figura abaixo. � Sem se preocupar com os endereços de interligação, proponha um esquema que lhe permita endereçar os computadores das redes locais associadas aos diferentes encaminhadores a partir da gama 193.145.21.0/25. � Usando uma gama de endereços privados (por exemplo: a gama 192.168.0.0/16) proponha um esquema para os endereços de interligação. A B CD 70 computadores 10 computadores 10 computadores 10 computadores
Compartilhar