Arquitectura de Redes Revisões de alguns conceitos dados em RSD
Camadas Protocolares Aplicação Cabeç Dados Transporte Cabeç Dados Internet Cabeç Dados Revisões Ligação Física Cabeç Dados Dados TCP/IP PDU que passa no fio
ARP Objectivo: traduzir endereço IP para endereço físico 8 6 4 3 Tipo End. Hardware Tipo Protocolo Cp End Hard Cp End Proto Operação Endereço Hardware Rementente End. Hard. Remetente End. Proto. Remetente End. Proto. Remetente End. Hard. Destino Endereço Hardware Destino Endereço Protocolo Destino Revisões 3 Mensagem ARP para Hard: Ethernet e Proto: IP Tipo End. Hard: Ethernet, Token Ring, etc Tipo Protocolo: IP, IPX, etc Operação: ARP Request, ARP Reply, RARP Request, RARP Reply RFC 86 - Ethernet Address Resolution Protocol: Or converting network protocol addresses to 48.bit Ethernet address for transmission on Ethernet hardware RFC 39 - Inverse Address Resolution Protocol
ICMP Permite transmitir erros, informação, pedidos Transportado em pacotes IP 8 6 4 3 Tipo Código Checksum [dados dependentes do tipo]... Revisões 4 Tipo e código: Definem o significado da mensagem Determinam o formato da mensagem IP Alguns tipos: echo request echo reply time exceeded Destination unreachable Redirect Alguns códigos (tipo=dest. unreach.) net unreachable host unreachable protocol unreachable port unreachable fragmentation needed and DF set
Ferramentas: ping 5 Baseado nas mensagens ICMP echo request e echo reply Opções: Broadcast: -b (necessário para endereços broadcast) Flood: -f intervalo entre echo request de (apenas acessível a root) Sem resolução de endereços: -n Tamanho do pacote: -s Mais: man ping Curiosidade: http://ftp.arl.army.mil/~mike/ping.html
Ferramentas: ping Exemplo : $ ping 93.37.55.3 PING 93.37.55.3 (93.37.55.3) 56(84) bytes of data. 64 bytes from 93.37.55.3: icmp_seq= ttl=5 time=.975 ms 64 bytes from 93.37.55.3: icmp_seq= ttl=5 time=.77 ms 64 bytes from 93.37.55.3: icmp_seq=3 ttl=5 time=.64 ms 64 bytes from 93.37.55.3: icmp_seq=4 ttl=5 time=.58 ms 64 bytes from 93.37.55.3: icmp_seq=5 ttl=5 time=.63 ms 64 bytes from 93.37.55.3: icmp_seq=6 ttl=5 time=.36 ms --- 93.37.55.3 ping statistics --- 6 packets transmitted, 6 received, % packet loss, time 54ms rtt min/avg/max/mdev =.975/.496/.779/.63 ms Exemplo : 6 $ ping 93.37.55. PING 93.37.55. (93.37.55.) 56(84) bytes of data. (passado algum tempo de espera, CTRL-C) --- 93.37.55. ping statistics --- packets transmitted, received, % packet loss, time 8997ms
Ferramentas: traceroute Baseado na mensagem ICMP time exceeded Pacotes enviados com TTL=,, 3 Opções: Sem resolução de nomes: -n (aconselhável) Enviar apenas um pacote de cada vez:-n (aconselhável para capturas, facilita a interpretação) Mais: man traceroute Exemplo : 7 $ /usr/sbin/traceroute -n 93.37.55.9 traceroute to 93.37.55.9 (93.37.55.9), 3 hops max, 38 byte packets....69 ms.3 ms. ms 93.36.39..38 ms.96 ms.958 ms 3 93.37.6..98 ms.73 ms.6 ms 4 93.36.54.5.55 ms.839 ms * 5 93.37.55.9.337 ms.47 ms 4.53 ms
Ferramentas: traceroute Exemplo : 8 $ /usr/sbin/traceroute -n 93.37.55. traceroute to 93.37.55. (93.37.55.), 3 hops max, 38 byte packets....66 ms.8 ms.99 ms 93.36.39..38 ms.966 ms.974 ms 3 93.37.6..94 ms.668 ms.78 ms 4 93.36.54.5. ms.55 ms.9 ms 5 * * * 6 * * * 7 * * * 8 * * * 9 * * * * * * * * * * * * 3 * * * 4 * * * 5 * * *
Ferramentas: traceroute Exemplo 3: 9 $ /usr/sbin/traceroute -n 93.37.55. traceroute to 93.37.55. (93.37.55.), 3 hops max, 38 byte packets....9 ms.4 ms.93 ms 93.36.39..6 ms.98 ms.964 ms 3 93.37.6.. ms.36 ms.9 ms 4 93.36.54.5.5 ms.634 ms.566 ms 5 93.36.4.37. ms.75 ms.447 ms 6 93.36.4.38.379 ms 4.79 ms.7 ms 7 93.36.4.37.636 ms.754 ms.4 ms 8 93.36.4.38.4 ms 3.945 ms.7 ms 9 93.36.4.37.63 ms.73 ms.46 ms 93.36.4.38.647 ms.796 ms.3 ms 93.36.4.37.63 ms.56 ms.64 ms 93.36.4.38.36 ms.79 ms.5 ms 3 93.36.4.37.769 ms.97 ms.33 ms 4 93.36.4.38.736 ms 5.455 ms.88 ms 5 93.36.4.37.65 ms.387 ms.65 ms
Ferramentas: ipcalc Cálculo de endereços e máscaras Exemplo (máscara com classes): $ ipcalc -m 3.76.3.77 NETMASK=55.55.. Exemplo (máscara CIDR): $ ipcalc -m 3.76.3.77/ NETMASK=55.55.4. Exemplo 3 (nº de bits do prefixo): $ ipcalc -p 3.76.3.77 55.55.4. PREFIX= Exemplo 4 (endereço de rede): $ ipcalc -n 3.76.3.77/ NETWORK=3.76.3.
Arquitectura de Redes Encaminhamento
Encaminhamento Conceito Terminal. Descobrir NA de Term. Term não está em Net 3. Enviar para Router 4. Descobrir HA de Router Terminal HA-R HA-T NA-T NA-T HA-T HA-R NA-T NA-T Dest. Orig. HA-R HA-R NA-T NA-T Net Net Net 3 Router Router. Term não está em Net nem Net. Enviar para Router 3. Descobrir HA de Router. Term está em Net3. Descobrir HA Term HA Hardware Address NA Network Address
Encaminhamento Tabelas Net Net R Net 3 Net 4 R Destino Net Next Hop R R3 Net Entrega directa Net 5 Net 3 Entrega directa Net 4 R3 Net 5 R 4... 4... 45... 45... 45...7 9.7.. 9.7..7 9.7.. R 9.7.. 9.7.. 3 R 8... Destino Máscara Next Hop 4... 55... 45... R3 8... 45... 55.55.. Entrega directa 9.7.. 55.55.55. Entrega directa 9.7.. 55.55.55. 9.7..7 8... 55... 45...
Encaminhamento Routing vs. Forwarding 4 Forwarding refere-se à descoberta do próximo salto para um pacote Descoberta do prefixo correspondente mais longo na tabela Tarefa do plano de dados Routing refere-se ao estabelecimento de rotas Preenchimento da tabela Tarefa do plano de controlo Informalmente, é frequente o uso da palavra routing para significar tanto uma coisa como a outra (ou mesmo ambas)
Encaminhamento Algoritmo Extrair IP do datagrama É um endereço nosso? não Consultar tabela encam., descobrindo a entrada para IP destino (IP dst & Masc == Net) Rede dst ligada directamente? Receber datagrama sim Existe rota por omissão? não Encaixa em alguma rota? * sim não sim ARP do IP do destino 5 não sim enviar pacote para essa rede Erro de encam. discard ARP do IP do router Enviar para o router * pode ser uma máscara de 3 bits
Encaminhamento CIDR (I) Classes de endereços Class 3 4 5 6 7 8 9 3 4 5 6 7 8 9 3 4 5 6 7 8 9 3 3 A Bits de Rede Host bits B Bits de Rede Host bits C Bits de Rede Host bits D Multicast group E Reserved Class Endereços Redes Hosts Class A... até 7.55.55.55 8 6 777 4 hosts por rede 6 Class B 8... até 9.55.55.55 6 384 65 53 hosts por rede Class C 9... até 3.55.55.55 97 5 54 hosts por rede Class D 4... até 39.55.55.55 --- Multicast Class E 4... até 55.55.55.55 --- Reservada As classes A, B e C têm endereços privados e reservados
Encaminhamento CIDR (II) 7 Aparecem muitas LANs com poucas máquinas Problemas administrativos Tabelas de routing aumentam (implicando trocas mais pesadas das rotas) Endereços de rede em falta Solução endereços de sub-redes Uma classe B pode implementar várias sub-redes (usando 5 dos 6 bits 3 sub-redes com 46 hosts) Pode-se implementar partições da rede com diferentes número bits para a sub-rede Hierarquia de endereços Máscaras de rede:... 4 55.55.55....?? 55.55.3.56
Encaminhamento CIDR (III) Net Se terminal não souber de sub-rede para que router envia? Net SubNet R R Net 3 SubNet 8 Pode-se aumentar o nº de hops a percorrer Regras para boa manutenção: Utilizar endereços contíguos Endereços de sub-rede uniformes
Encaminhamento CIDR (IV) Super Redes Agregação de redes de uma classe mais baixa num conjunto (ex.: um ISP poderia querer agregar 4 redes classe C, 9.5.6., 9.5.6., 9.5.6., 9.5.63. (9.5.6., 4) Notação CIDR 9.5.6./ CIDR = Classless Inter-Domain Routing (também especifica endereçamento) CIDR obrigatoriamente utiliza máscaras contínuas 9
Encaminhamento Estático (I) Desvantagens Configuração manual; Mudança topológica reconfiguração; Vantagens Poupa largura de banda ausência do tráfego originado pelos protocolos de encaminhamento no encaminhamento dinâmico; Ligeira segurança não existe informação de rotas a circular ; não existe a possibilidade de enviar informação falsa Apropriado para pequenas redes;
Encaminhamento Estático (II) Não existe necessidade de protocolos de encaminhamento entre R e R R só precisa de saber que todo o tráfego que não é destinado à sua rede local deverá ser enviado para o R R funcionará apenas com uma rota estática para a rede do R Poupança na largura de banda Outros routers devem ter uma rota por omissão Net R Linha dedicada R Interne t
Encaminhamento Dinâmico (I) Com o acréscimo de ligações entre routers a situação complica-se Métricas dos caminhos tomam maior relevo para determinar escolha de rotas menor delay, menor jitter,... Mais usado: contagem de saltos AS Linha dedicada Interne t AS 3 AS
Encaminhamento Dinâmico (II) 3 A maior parte do tráfego de rede encontra-se dentro de grupos lógicos ou domínios de encaminhamento: Sistema Autónomos, Áreas, etc: mesma autoridade de administração e que utiliza o mesmo protocolo de encaminhamento para partilhar informação entre os seus routers; Protocolos de encaminhamento interiores e exteriores As métricas não são usadas em protocolos de encaminhamento exterior, pois não será de confiar nas métricas internas anunciadas.
Terminais 4 Normalmente não participam no processo de routing Tabela de encaminhamento contém apenas Redes às quais está directamente ligado Default gateway Numa rede com mais que um router, se na default gateway a rota para esse destino sair pela mesma interface Router reenvia o pacote Envia ao terminal um ICMP Redirect Específico para um endereço IP de destino Terminal faz cache do next hop para esse IP