Redes de Computadores Prof. Macêdo Firmino Camada de Redes Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 1 / 68
Pilha TCP/IP A B M 1 Aplicação Aplicação M 1 Cab M T 1 Transporte Transporte Cab M T 1 Cab T Cab R M 1 Rede Rede Cab T Cab R M 1 Cab T Cab R Cab E M CDE 1 Enlace de dados Enlace de dados Cab T Cab R Cab E M CDE 1 1011001010001011 Física Física 1011001010001011 Meio Físico Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 2 / 68
Camada de Rede Funções: Endereçamento lógico: adiciona ao pacote o endereço lógico do dispositivo que envia e do dispositivo que recebe. Roteamento: determinar a maneira como os pacotes são roteados da origem até o destino (entrega dos pacotes); Qualidade do serviço fornecido (retardo, tempo de trânsito, instabilidade etc.). Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 3 / 68
Camada de Rede Os principais protocolos que fornecem serviços da camada de rede são: IP (Internet Protocol): fornece os serviços de endereçamento, fragmentação e remontagem; ICMP (Internet Control Messaging Protocol): utilizado para informar ou diagnosticas problemas na transmissão; ARP (Address Resolution Protocol): utilizado para converter endereço MAC em endereço IP, e endereço IP em endereço MAC; Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 4 / 68
Protocolo IP O protocolo IP (Internet Protocol) é um protocolo da camada de rede que controla a entrega dos pacotes (não confiável e sem conexão) fim-a-fim na Internet; O IP é utilizado em rede de comutação de pacotes que utilizam a abordagem de datagrama. Isto significa que cada datagrama é controlado independentemente, ou seja, pode seguir por uma rotas diferentes até o destino e chegar fora de ordem; O protocolo IP faz o melhor esforço para garantir a entrega, ou seja, não provê controle de erro e nem fluxo. Utiliza somente mecanismos de detecção de erros e descarte de pacotes. Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 5 / 68
Protocolo IP Para rotear os pacotes se faz necessário a atribuição de endereços únicos aos dispositivos (endereçamento lógico); Atualmente, existem duas versões para o endereçamento IP: IPv4 e IPv6. A C F B LAN LAN G WAN LAN LAN D E H I Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 6 / 68
Endereçamento IPv4 Um endereço IPv4 contém 32 bits de comprimento; O espaço de endereçamento é o número total de endereço disponíveis pelo protocolo. O espaço de endereçamento do IPv4 é igual a 2 32 = 4.294.967.296; Estes endereços são: Exclusivos: jamais dois dispositivos na Internet podem ter o mesmo endereço ao mesmo tempo; Universais: é aceito por qualquer host que queira se conectar na Internet. Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 7 / 68
Endereçamento IPv4 Existem duas notações predominantes para indicar um endereço IPv4: Notação binária: o endereço é exibido com 32 bits, geralmente agrupamos os 32 bits em 4 bytes. Por exemplo: 01110101 10010101 00011101 00000010. Notação decimal pontuada: os endereços são mostrados na forma decimal pontuada separando os bytes. Por exemplo: 117.149.29.2. Existem dois modos de endereçamento para o IPv4: Endereçamento com classe; Endereçamento sem classe. Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 8 / 68
Endereçamento IPv4 - Endereçamento com Classe Endereçamento com Classe O endereçamento IPv4 incialmente utilizava o conceito de classes. O espaço de endereçamento é dividido em cinco classes: A, B, C, D e E. Podemos encontrar a classe de um endereço quando for dado o endereço, na notação binária ou na notação decimal pontuada, de acordo com a tabela. Primeiro Byte Segundo Byte Terceiro Byte Quarto Byte Primeiro Byte Segundo Byte Terceiro Byte Quarto Byte Classe A 0 Classe A 0-127 Classe B 10 Classe B 128-191 Classe C 110 Classe C 192-223 Classe D 1110 Classe D 224-239 Classe E 1111 Classe E 240-255 Notação Binária Notação Decimal Pontuada Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 9 / 68
Endereçamento IPv4 - Endereçamento com Classe Na notação binária podemos utilizar o seguinte procedimento para determinarmos a classe do endereço. Ínicio 1 1 1 1 1º 1º bit bit 2º 2º bit bit 3º 3º bit bit 4º 4º bit bit Classe A 0 0 0 0 Classe B Classe C Classe D Classe E Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 10 / 68
Exercício A qual classe pertence os seguintes endereços IPs: a) 18.32.78.125 b) 240.47.81.13 c) 203.31.21.4 d) 150.1.6.14 Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 11 / 68
Endereçamento IPv4 - Endereçamento com Classe Na Internet, cada equipamento tem um endereço IP que representa o seu endereço de rede e o endereço do equipamento. Sendo que dois equipamentos em uma mesma rede (por exemplo, a Internet) não poderão ter nunca o mesmo endereço IP; No caso da Internet, os endereços são mundialmente administrados pelo ARIN (American Registry for Internet Number). Os endereços das classes A, B e C são destinados à comunicação unicast (comunicação entre uma origem e um destino); Os endereços na classe D foram reservados para endereços multicast (comunicação entre uma origem e um grupo de destino); Os endereços da Classe E foram reservados para uso futuro. Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 12 / 68
Endereçamento IPv4 - Endereçamento com Classe Os endereços das Classes A, B e C são divididos em duas partes: rede (netid) e host (hostid). Classe A Primeiro Byte Netid Segundo Byte Hostid Terceiro Byte Hostid Quarto Byte Hostid Número de Redes 128 Número de Host/Rede 16777216 Classe B Netid Netid Hostid Hostid 16384 65536 Classe C Netid Netid Netid Hostid 2097152 256 Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 13 / 68
Endereçamento IPv4 - Endereçamento com Classe Endereços Especiais: O endereço 0.0.0.0 é usado pelos hosts quando eles estão sendo inicializados; Os endereços IP que têm 0 como netid se refere a sua rede. Por exemplo 200.126.31.0; O endereço que consiste apenas em dígitos 1 (255.255.255.255) permite a difusão na rede local (mesagens de broadcast); Os endereços IP que têm como netid uma rede específica e hostid formado por 1s permite que a máquina enviem pacotes de difusão para LANs distantes, em qualquer parte da Internet. Por exemplo, 200.126.31.255; Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 14 / 68
Endereçamento IPv4 - Endereçamento com Classe Endereços Especiais Todos os endereços com o formato 127.x.y.z são reservados para testes de loopback. Os pacotes destinados para estes endereços não são enviados, eles são processados localmente e tratados como pacotes de entrada. Para permitir que uma determinada empresa faço uso de endereçamento IP em redes locais, mas que não possuem conexão direta com a Internet, reservaram-se três blocos de endereçamento para redes locais: Da classe A: 10.0.0.0 a 10.255.255.255; Da classe B: 172.16.0.0 a 172.31.255.255; Da classe C: 192.168.0.0 a 192.168.255.255. Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 15 / 68
Endereçamento IPv4 - Endereçamento com Classe Podemos usar o conceito de máscaras para identificar o netid de um endereço IP no endereçamento com classes. Por exemplo, a máscara da classe A tem oito números 1, que significa que os 8 primeiros bits de qualquer endereço da classe A definem o netid e os 24 bits seguintes o hostid. Classe A Classe B Classe C Máscara Binária 11111111 00000000 00000000 00000000 11111111 11111111 00000000 00000000 11111111 11111111 11111111 00000000 Máscara Decimal 255.0.0.0 255.255.0.0 255.255.255.0 Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 16 / 68
Endereçamento IPv4 - Endereçamento com Classe É usado a máscara para determinar qual parte do endereço é a parte da rede e qual é o endereço do host. Para conseguir essa separação é realizada uma operação AND do endereço IP com a máscara. Por exemplo: 200.137.2.120 (IP) 11001000 10001001 00000010 01111000 (IP) and 11111111 11111111 11111111 00000000 (máscara) 11001000 10001001 00000010 00000000 (End. Rede) 200.137.2.0 (End. Rede) Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 17 / 68
Endereçamento IPv4 - Endereçamento com Classe Exercício: Determine se os equipamentos com os respectivos endereços 172.16.1.5/255.255.0.0 e 172.16.59.239/255.255.0.0 pertencem a mesma rede. Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 18 / 68
Endereçamento IPv4 - Endereçamento com Classe Frequentemente um administrador da rede de uma empresa precisa juntar os hosts dentro de um grupo; A solução para esses problemas é permitir que, ao invés de se restringir apenas aos endereços de rede e de equipamento (proposto pelas classes de endereço), o endereço do equipamento fosse dividido diversas partes para uso interno (sub-redes); Cada sub-rede fica apenas com uma faixa de números IP de toda a faixa original. Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 19 / 68
Endereçamento IPv4 - Endereçamento com Classe Por exemplo, A rede Classe C 200.100.100.0/255.255.255.0 (netid = 200.100.100) tem 256 endereço disponíveis: de 200.100.100.0 a 200.100.100.255. Na verdade são 254 números que podem ser utilizados em hosts, descontando o primeiro que é o número da própria rede e o último que o endereço de broadcast). Primeiro Byte Segundo Byte Terceiro Byte Quarto Byte Classe C Netid Netid Netid Hostid Netid Netid Netid Hostid Sub-rede Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 20 / 68
Endereçamento IPv4 - Endereçamento com Classe Para dividirmos está rede em 8 sub-redes, utilizamos 3 bits do campo hostid para representar o endereço da sub-rede, onde cada sub-rede fica com 5 bits (32 endereços - 2 = 30 endereços) para endereçar os hosts. Primeiro Byte Segundo Byte Terceiro Byte Quarto Byte Classe C Netid Netid Netid Hostid Netid Netid Netid Hostid Sub-rede Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 21 / 68
Endereçamento IPv4 - Endereçamento com Classe Exercício: Dado o endereço de rede 128.10.0.0, determine qual a classe que ele pertence, divida esta rede em 4 sub-redes mostrando quais seriam os espaços de endereçamento de cada sub-rede. Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 22 / 68
Endereçamento IPv4 - Endereçamento sem Classe Em 1996, para suplantar o esgotamento de endereços e oferecer acesso à Internet a um número maior de organizações, o endereçamento sem classe foi desenvolvido e implementado; Neste método não existe classes, mas os endereços ainda são concedidos em blocos; No endereçamento sem classe, quando uma entidade precisa ser conectada a Internet, lhe é concedido um bloco (intervalo) de endereços; O tamanho do bloco varia tomando como base a necessidade da entidade. Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 23 / 68
Endereçamento IPv4 - Endereçamento sem Classe Para simplificar a manipulação de endereço é colocada duas restrições: Os endereços em um bloco devem ser contíguos, um após o outro (por exemplo, 200.10.93.12, 200.10.93.13, 200.10.93.14, 200.10.93.15,...); O número de endereços em um bloco deve ser potência de 2 (por exemplo, 1, 2, 4, 8,...). Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 24 / 68
Endereçamento IPv4 - Endereçamento sem Classe Quando uma empresa solicita um bloco de endereços IP, ela recebe o primeiro endereço e a máscara. Estas duas partes da informação define toda a faixa de IPs disponível para ela. A máscara pode ser fornecida em notação decimal com pontos ou na notação de barra (barra seguida da quantidade de 1s da máscara). Por exemplo: 255.255.0.0 = /16. O endereçamento sem classe permite também o uso de sub-redes. O administrador da rede pode calcular a máscara de sub-rede da mesma maneira que no endereçamento com classe. A quantidade de 1s aumenta para definir a mascara da sub-rede. Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 25 / 68
Endereçamento IPv4 - Endereçamento sem Classe Exercício: uma empresa adquiriu a seguinte faixa de endereços IPs: 193.16.32.0/30, determine todos os endereços adquiridos e quantos poderão ser utilizados para endereçar computadores. Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 26 / 68
Endereçamento IPv4 - NAT O NAT (Network Address Translation) permite ao usuário utilizar internamente um grande conjunto de endereços, a partir de um ou de um conjunto de endereços externos; Os endereços internos são conhecidos apenas localmente, podendo ser utilizado os endereços especiais para rede privada (10.0.0.0/8, 172.16.0.0/12 e 192.168.0.0/16); Para implementar este recurso, esta rede deve possuir uma conexão com a Internet através de um roteador com suporte a NAT. Todos os pacotes direcionados para fora da rede têm o endereço de origem do pacote substituído pelo endereço externo no roteador; Todos os pacotes destinados para dentro da rede têm o campo endereço de destino do pacote substituído pelo endereço privado apropriado. Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 27 / 68
Endereçamento IPv4 - NAT 172.18.3.1 172.18.3.2 Origem: 172.18.3.3 Origem: 200.32.45.2 Internet Destino: 172.18.3.3 Destino: 200.32.45.2 172.18.3.3 Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 28 / 68
NAT Como o roteador sabe qual o endereço de destino que deverá atribuir a um pacote? A tabela de tradução serve para os roteadores realizarem a tradução dos endereços IPs. Endereço Porta Endereço Porta Protocolo de origem de origem de destino de destino de transporte 172.18.3.1 22 25.0.2.54 22 TCP 172.18.3.13 80 200.135.23.5 1568 UDP 172.18.3.47 21 217.26.10.1 21 UDP Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 29 / 68
Roteamento Roteamento corresponde a um conjunto de regras que definem como dados originado em uma determinada rede devem alcançar o seu destino em uma outra rede. Para que ocorra o roteamento se faz necessários que os computadores e roteadores tenham uma tabela de roteamento. Esta tabela deverá ter uma entrada para cada destino, ou uma combinação de destinos, a fim direcionar pacotes IP; Quando um host tem um pacote a ser enviado, ou quando um roteador recebe um pacote, o mesmo irá procurar na sua tabela de roteamento a rota para o destino final. Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 30 / 68
Roteamento A tabela de roteamento contém informações sobre o endereço das redes de destino, o endereço de máscara da rede de destino, o endereço do próximo roteador ao qual deve ser encaminhado o pacote e o custo associado; Uma técnica que simplifica o roteamento é a rota padrão (0.0.0.0). Mesmo que a origem não tenha informações sobre a rede de destino, ele tentará alcançá-la enviando os dados ao seu default gateway. Destino Próximo Roteador Máscara Interface 192.168.0.0 * 255.255.255.0 wlan0 14.0.0.0 118.45.23.8 255.255.255.0 eth0 193.14.5.0 84.78.4.12 255.255.255.0 eth0 0.0.0.0 192.168.0.1 0.0.0.0 wlan0 Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 31 / 68
Roteamento Destino: estabele o endereço de rede para o qual o pacote será entregue; Próximo roteador: define o endereço do roteador do próximo nó ao qual o pacote será entregue; Máscara: define a máscara aplicada para a entrada; Interface: mostra a interface ao qual sairá o pacote. Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 32 / 68
Roteamento A tabela de roteamento pode ser: Estática: contém informações introduzidas manualmente. O administrador introduz a rota para cada destino em uma tabela. Quando existir uma mudança na rede se faz necessário a alteração da tabela manualmente pelo administrador; Dinâmica: é atualizada periodicamente usando-se um dos protocolos de roteamento dinâmico como o RIP, OSPF ou BGP. Toda vez que houver uma mudança na rede (por exemplo, desligamento de um roteador e quebra de um enlace) os protocolos de roteamento atualizam automaticamente todas as tabelas. Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 33 / 68
Roteamento Rede 01: 10.10.10.0/24 10.10.10.1 10.10.5.1 10.10.5.2 10.10.30.1 Rede 03: 10.10.30.0/24 10.10.10.25 10.10.5.4 10.10.5.3 Rede 02: 10.10.20.0/24 10.10.30.144 10.10.20.1 10.10.20.45 Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 34 / 68
Roteamento Destino Prox. Roteador Mascara Interface 10.10.10.0 * 255.255.255.0 eth0 0.0.0.0 10.10.10.1 0.0.0.0 eth0 Rede 01: 10.10.10.0/24 10.10.10.1 10.10.5.1 10.10.5.2 10.10.30.1 Rede 03: 10.10.30.0/24 10.10.10.25 10.10.30.144? 10.10.5.4 10.10.5.3 10.10.20.1 Rede 02: 10.10.20.0/24 10.10.30.144 10.10.20.45 Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 35 / 68
Roteamento Por exemplo, considere que o computador 10.10.10.25 da Rede 01, precisa acessar um arquivo que está em uma pasta compartilhada do computador 10.10.30.144 da Rede 03. A primeira ação do computador 10.10.10.25 é fazer os cálculos para verificar se os dois computadores estão na mesma rede. Se o computador 10.10.30.144 estiver na mesma rede a entrega é feita diretamente da origem para o destino; Como os computadores pertencem a redes diferentes, os dados devem ser enviados para o Roteador 10.10.10.1. Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 36 / 68
Roteamento Destino Prox. Roteador 10.10.10.0 * 10.10.20.0 10.10.5.4 10.10.30.0 10.10.5.2 Mascara 255.255.255.0 255.255.255.0 255.255.255.0 Interface eth0 eth1 eth2 Rede 01: 10.10.10.0/24 10.10.10.1 10.10.5.1 10.10.5.2 10.10.30.1 Rede 03: 10.10.30.0/24 10.10.10.25 10.10.5.4 10.10.5.3 Rede 02: 10.10.20.0/24 10.10.30.144 10.10.20.1 10.10.20.45 Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 37 / 68
Roteamento Quando um pacote chega ao roteador, ele aplica a máscara ao endereço de destino para determinar o endereço correspondente do destino na sua tabela de roteamento, ou seja, se ele sabe para quem enviar um pacote de informações, destinado a rede 10.10.30.0; O Roteador 01 tem, em sua tabela de roteamento, a informação de que pacotes para a rede 10.10.30.0 devem ser encaminhados pela interface de eth2 para o roteador 10.10.5.2. Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 38 / 68
Roteamento Destino Prox. Roteador 10.10.10.0 10.10.5.1 10.10.20.0 10.10.5.1 10.10.30.0 * Mascara 255.255.255.0 255.255.255.0 255.255.255.0 Interface eth0 eth0 eth1 Rede 01: 10.10.10.0/24 10.10.10.1 10.10.5.1 10.10.5.2 10.10.30.1 Rede 03: 10.10.30.0/24 10.10.10.25 10.10.5.4 10.10.5.3 Rede 02: 10.10.20.0/24 10.10.30.144 10.10.20.1 10.10.20.45 Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 39 / 68
Roteamento Quando o pacote chega ao roteador, o mesmo precisa consultar a sua tabela de roteamento e verificar se ele conhece um caminho para a rede 10.10.30.0, ou seja, se ele sabe para quem enviar o pacote de informações, destinado a rede 10.10.30.0; O Roteador 03 tem, em sua tabela de roteamento, a informação de que pacotes para a rede 10.10.30.0 devem ser encaminhados pela interface eth1, que é a interface que conecta o Roteador 03 à rede local 10.10.30.0; O pacote é enviado, através da interface 10.10.30.1, para a rede local. Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 40 / 68
Roteamento Com a rota padrão, todo o endereço não especificado na tabela de roteamento será encaminhado à interface que transporta o pacote para o roteador padrão (default); A rota padrão se faz necessário, por exemplo, quando desejamos conectar um computador na Internet. 14.0.0.0 Destino: 172.30.9.15 m0 m1 m2 192.16.7.0 Internet Destino 14.0.0.0 192.16.7.0 0.0.0.0 Prox. Roteador 118.45.23.8 118.45.23.8 145.11.10.6 Mascara 255.0.0.0 255.255.255.0 0.0.0.0 Interface m1 m1 m2 Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 41 / 68
Datagrama IP Cabeçalho Dados 0 4 8 12 Versão HLEN DS Tamanho total Identificação Flags Deslocamento TTL Protocolo Checksum do cabeçalho Endereço IP de origem 16 Endereço IP de destino 20 Opções Bytes 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 42 / 68
Datagrama IP Cabeçalho: Versão: define a versão do protocolo IP utilizado (neste caso a versão é 4); HLEN: corresponde ao tamanho do cabeçalho em palavras de 4-bytes, ou seja, o valor deste campo deverá ser multiplicado por 4 para se obter o valor real em bytes; DS: define a classe do datagarama para os propósitos da qualidade de serviço; Tamanho total: define o tamanho total do datragrama IP (cabeçalho + dados). Como é utilizado neste campo 16 bits, teremos uma datagrama IP com tamanho máximo de 65.536 Bytes. Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 43 / 68
Datagrama IP O datagrama IP pode viajar através de muitas redes distintas. Desta forma, o tamanho e o formato do quadro da camada de enlace pode variar, resultando numa variação do tamanho do datagrama IP. Essa variação resulta na fragmentação do datagrama. Os campos envolvidos na fragmentação são: Identificação, Flag e Deslocamento. Identificação: identifica o datagarama original. Quando um datagrama é fragmentado, este valor é copiado em todos os fragmetos. Sendo assim, todos os fragmentos carregam o mesmo número de identificação. Este campo auxilia o host de destino no processo de reagrupamento. Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 44 / 68
Datagrama IP Flag: é um campo de 3-bits. Reservado; Não fragmentar: se este campo for 1, os hosts e roteadores não poderão fragmentar o datagrama; Mais fragmentos: se o valor deste bit for 1, significa que este datagrama não é o último fragmento. Deslocamento: mostra a posição relativa deste fragmento com relação ao datagrama como um todo. Ele representa o deslocamento dos dados em unidades de 8-bytes. Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 45 / 68
Datagrama IP 20 1.400 (Bytes) Cabeçalho Dados 4 5 0 1.420 0 14.567 0 0 1 64 6 Y 192.168.0.123 201.35.78.1 20 4.000 (Bytes) Cabeçalho Dados 20 1.400 (Bytes) Cabeçalho Dados 4 5 0 4.020 0 14.567 0 0 0 64 6 X 192.168.0.123 201.35.78.1 4 5 0 1.420 1400/8 = 14.567 0 0 1 175 Z 64 6 192.168.0.123 201.35.78.1 20 1.200 (Bytes) Cabeçalho Dados 4 5 0 1.220 2800/8 14.567 0 0 0 = 350 W 64 6 192.168.0.123 201.35.78.1 Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 46 / 68
Datagrama IP TTL: (Time To Live): usado para controlar o número máximo de saltos visitados pelo datagrama. Quando o host de origem envia um datagrama um número é armazenado neste campo. Cada roteador que processa o datagrama decrementa este número em 1 unidade. Se este valor chegar a 0, o roteador que estiver o processando deverá descarta-lo; Protocolo: define o protocolo da camada superior encapsulado no datagrama IP. Por exemplo: 1 = ICMP, 2 = IGMP, 6 = TCP, 17 = UDP; Checksum: detecta erros nos dados do cabeçalho. Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 47 / 68
Datagrama IP Endereço de Origem: define o endereço IP do host de origem; Endereço de Destino: define o endereço IP do host de destino; Opções: é um campo não obrigatório utilizado para testes e depurações da rede. Este campo é variável e pode ter no máximo 40 Bytes Por exemplo, é usada para registrar os roteadores que manipularam o datagrama (Record Router), é usada pela origem para predeterminar uma rota para o datagrama (Strict Source Route) e permite o registro do tempo de processamento do datagrama pelo roteador (Timestamp). Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 48 / 68
Protocolo ARP Os datagrama IP, devem ser encapsulados em quadros (frames), que requerem endereços físicos; Um pacote partindo de um host de origem pode passar por várias redes físicas diferentes antes de finalmente atingir o host de destino. Isso significa que a entrega de um pacote a um host ou roteador requer dois níveis de endereçamento: lógico (IP) e físico (MAC); ARP (Address Resolution Protocol) é um protocolo que mapeia endereço IP no seu respectivo endereço MAC; Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 49 / 68
Protocolo ARP - Caso 1 O host de origem deseja transmitir um pacote para outro host na mesma rede; IP: 10.10.10.25 MAC: 00:A3:21:08:FF:AC IP: 10.10.30.144 MAC: 00:00:14:85:C2:01 Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 50 / 68
Protocolo ARP - Caso 2 O host de origem deseja transmitir um pacote para outro host localizado noutra rede; IP: 10.10.30.1 MAC: 12:08:10:AA:B5:0F IP: 10.10.10.25 MAC: 00:A3:21:08:FF:AC IP: 10.10.10.1 MAC: 19:05:15:DE:18:23 IP: 10.10.30.144 MAC: 00:00:14:85:C2:01 Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 51 / 68
Protocolo ARP - Caso 3 O host de origem é um roteador que recebeu um datagrama destinado a um host localizado noutra rede; IP: 10.10.20.1 MAC: 72:18:95:CA:BC:FF IP: 10.10.5.3 MAC: 01:23:D4:47:F0:19 IP: 10.10.5.4 MAC: 00:05:10:A4:0F:23 IP: 10.10.20.45 MAC: 0B:A0:12:94:D1:11 Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 52 / 68
Protocolo ARP - Caso 4 O host de origem é um roteador que recebeu um datagrama destinado a um host sob a jurisdição dele. IP: 10.10.20.1 MAC: 72:18:95:CA:BC:FF IP: 10.10.20.45 MAC: 0B:A0:12:94:D1:11 Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 53 / 68
Protocolo ARP Etapas envolvidas no processo de mapeamento ARP: O host de origem, que precisa determinar o endereço MAC de outro host da rede, envia um pacote ARP de consulta (query); Este pacote inclui o endereço MAC e IP da origem e o endereço IP do destino; O pacote de solicitação é enviado em broadcast através da rede; Todos os dispositivos da rede recebem este pacote. Porém, só o dispositivo que possuir o endereço IP consultado irá responder a solicitação. A resposta, em modo unicast, enviando seu endereço MAC a origem; O host de origem recebe a resposta ARP e armazena este endereço em uma tabela (chamada de tabela ARP). Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 54 / 68
Protocolo ARP IP: 141.23.56.23 MAC: 00:A3:64:21:9C:00 IP: 141.23.56.1 MAC: 01:56:60:BB:1A:F0 IP: 141.23.56.2 MAC: FF:B4:14:20:CC:90 IP: 141.23.56.3 MAC: 90:A5:6B:26:DC:F0 Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 55 / 68
Protocolo ICMP Algumas situações que ocorrem erros: Quando um roteador tiver que descartar um datagrama pelo fato de ele não conseguir encontrar um caminho até o destino final, ou pelo fato do campo TTL ter expirado; Quando o host de destino final tiver que descartar todos os fragmentos de um datagrama por não ter recebido esses fragmentos dentro de um prazo predeterminado. Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 56 / 68
Protocolo ICMP Como o protocolo IP não possui controle de erro foi desenvolvido um protocolo auxiliar chamado ICMP (Internet Control Message Protocol); As mensagens ICMP são encapsuladas no datagrama IP; As mensagens ICMP dividem-se em duas categorias: Mensagens de notificação: informa problemas que um roteador ou host podem vim a encontrar ao processar um datagrama IP. O ICMP sempre envia mensagens de erro para o originador da mensagem; Mensagens de consulta: ajudam aos administradores de rede a obterem informações sobre um roteador ou host. Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 57 / 68
Mensagens ICMP Principais mensagens ICMP: Notificação de erros: Destino inalcançavél (Destination unreachable); Contenção da fonte (Source quench); Tempo esgotado (Time-exceeded); Problemas de parâmetros (Parameter problems); Redirecionamento (Redirection). Consulta: Solicitação e resposta de eco (Eco-Request e Eco-Replay); Solicitação e resposta de timestamp (Timestamp Request e Reply). Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 58 / 68
Protocolo IPv6 Apesar de todas as soluções a curto prazo (como divisão em sub-redes, endereçamento sem classe e NAT) o esgotamento de endereços é um problema a longo prazo; Além disso, a Internet deve acomodar transmissão de vídeo e áudio em tempo real. Esses tipos de dados requer recursos não previstas no IPv4; E por último, a Internet deve permitir criptografia e autenticação de dados para algumas aplicações. Não são oferecidos recursos de criptografia e autenticação no IPv4. Para superar essas e outras deficiências foi proposto o IPv6. Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 59 / 68
Protocolo IPv6 Vantagens do IPv6: Maior espaço de endereçamento; Formato mais adequado do cabeçalho; Novas opções; Espaço para expansão: permite a extensão do protocolo, caso seja preciso suportar novas tecnologias ou aplicações; Suporte para alocação de recursos: um mecanismo (denominado flow label) foi adicionado para permitir que a origem solicite tratamento especial de um pacote; Melhor suporte à segurança da informação. Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 60 / 68
Endereçamento IPv6 Esta nova versão do protocolo (IPv6) possui endereços de 128 bits; O espaço de endereçamento do IPv6 = 2 128 3,4 * 10 18 endereços; Há espaço de endereçamento para permitir mais de 1.500 endereços IP para cada metro quadrado de área da superfície da Terra; O projeto IPv6 também suporta o uso de máscara de sub-redes, multicast e notação de barra (CIDR). Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 61 / 68
Endereçamento IPv6 - Notação Para tornar os endereços IPv6 mais legíveis é utilizado a notação hexadecimal com dois-pontos. Nesta notação, os 128 bits são divididos em 8 seções, cada uma com 2 bytes de comprimento. Por exemplo: fe80:0000:0000:0000:0224:d6ff:fe1f:7ca2 Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 62 / 68
Endereçamento IPv6 - Notação Geralmente muito dos dígitos do endereço IPv6 são zeros. Nesse caso, podemos abreviar o endereço, da seguinte forma: Os zeros não significativos de uma seção podem ser omitidos; Podemos eliminar todos os zeros (de seções consecutivas de zeros) e substituí-los por um dois-pontos duplo. Porém este tipo de abreviação é permitido apenas uma vez por endereço. Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 63 / 68
Endereçamento IPv6 - Notação Exemplos: Endereço 0000:0000:0000:FFFF:0172:0017:0010:0040 2001:0C00:0000:0000:5400:0000:0000:0009 2001:0000:0004:CFE0:0000:0000:0000:0000 Abreviação ::FFFF:172.17.10.40 2001:C00::5400:0:0:9 ou 2001:C00:0:0:5400::9 2001:0:4:CFE0:: Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 64 / 68
IPv6 - Formato do Datagrama Um datagrama IPv6 é composto por um cabeçalho-base obrigatório seguido por cabeçalhos de extensão opcionais e os dados da camada superior. 40 bytes variável [Opcional] até 65.535 bytes Cabeçalho-Base Dados Versão PRI Flow label Comprimento do Payload Próx cabeçalho Endereço IP de origem Endereço IP de destino TTL... Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 65 / 68
IPv6 - Formato do Pacote Os campos são: Versão: define a versão do protocolo. Para o IPv6 o valor é 6. Este campo contém 4 bits; Prioridade: define a prioridade do datagrama. Por exemplo, se um dos dois datagramas consecutivos tiver de ser descartado em virtude do congestionamento, aquele datagrama assinalado com prioridade menor será eliminado; Flow label: permite definir controles especiais a fluxos de informação, ou seja, ele pode ser usado para acelerar o processamento de um pacote por um roteador. Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 66 / 68
IPv6 - Formato do Pacote Comprimento do Payload: define o comprimento do datagrama IP excluindo o cabeçalho-base; Próximo cabeçalho: aponta para o próximo cabeçalho após o cabeçalho-base. O próximo cabeçalho pode ser um cabeçalho de extensão ou o cabeçalho de um pacote encapsulado na área de dados; TTL (limite de saltos): é o mesmo campo do IPv4; Endereço de Origem: identifica a fonte de origem do datagrama; Endereço de Destino: identifica o endereço de destino do datagrama. Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 67 / 68
IPv6 - Cabeçalhos de Extensão Para dar maior funcionalidade ao datagrama IP, o cabeçalho-base pode ser seguido por até seis cabeçalhos de extensão. São Exemplos de funções dos cabeçalhos de extensão: Hop-by-hop: informações diversas para os roteadores; Roteamento pela origem: lista parcial dos roteadores a serem visitados pelo datagrama; Fragmentação: realiza o gerenciamento da fragmentação do datagrama; Autenticação: usado para verificar a identidade do transmissor; ESP (Encrypted Security Payload): informações sobre o conteúdo criptografado; Opções de destino: informações adicionais para o destino. Macêdo Firmino (IFRN) Redes de Computadores Junho 2012 68 / 68