Encaminhamento Bacharelado em Informática TCP/IP Disciplina: Internet e Arquitetura Cada datagrama é despachado pela origem e o software IP na origem e nos roteadores colaboram para entregáentregá-lo ao destino TCP/IP • O caminho seguido é chamado de rota Encaminhamento e roteamento Os roteadores constróem tabelas de rotas para realizarem o encaminhamento Atualização de tabelas de rotas Sistemas autônomos Essas tabelas contêm, a princípio, entradas que relacionam um determinado destino a uma métrica (ou custo custo)) • Podem apresentar outras informações 1 2 Tabelas de rotas Tabelas de rotas Copyright 1999 1999--2008 by TeleMídia Lab. TCP/IP vênus-slip terra-slip 10.1.55.2 10.1.55.10 255.255.255.0 255.255.255.0 vênus-eth 10.1.16.4 255.255.255.0 08:00:20:73:e1:01 10.1.2.10 255.255.255.0 00:00:0c:09:34:23 rot-eth mercúrio 10.1.16.7 255.255.255.0 08:00:69:73:e1:01 terra-eth 10.1.2.5 255.255.255.0 08:00:20:80:f1:a0 10.1.2.3 10.1.2.7 255.255.255.0 255.255.255.0 08:00:69:75:e1:4e08:00:69:75:e1:0a marte júpiter TCP/IP Network Address Netmask Gateway Address Interface Metric 0.0.0.0 127.0.0.0 10.1.2.0 10.1.2.5 10.1.55.0 10.1.55.10 10.1.16.0 255.255.255.255 0.0.0.0 255.0.0.0 255.255.255.0 255.255.255.255 255.255.255.0 255.255.255.255 255.255.255.0 255.255.255.255 10.1.2.10 127.0.0.1 10.1.2.5 127.0.0.1 10.1.55.10 127.0.0.1 10.1.55.2 10.1.2.5 10.1.2.5 127.0.0.1 10.1.2.5 127.0.0.1 10.1.55.10 127.0.0.1 10.1.55.10 10.1.2.5 1 1 1 1 1 1 1 1 REDES EXTERNAS 3 4 Roteamento Roteamento TCP/IP A forma como os roteadores obtêm as informações para suas tabelas de rotas envolve duas questões: • Que valores devem ser colocados nas tabelas ? TCP/IP A inicialização depende do sistema operacional: • Lê uma tabela inicial armazenada em disco – Entradas para redes “locais” podem ser inseridas implicitamente • Começa com a tabela vazia e preenche através de comandos explícitos • Como esses valores são obtidos ? • Inicia “deduzindo” um conjunto mínimo de roteadores Além disso, o estabelecimento de rotas envolve duas fases: vizinhos Caso mude a topologia de conectividade, as tabelas de rotas devem ser reconfiguradas: • Inicialização • Estática (comandos de configuração/diagnóstico, mensagens • Atualização ICMP Redirect) • Dinâmica (protocolos de divulgação de rotas) 5 6 Roteamento dinâmico Examinando o problema do roteamento dinâmico TCP/IP TCP/IP si,, sobre a Roteadores trocam informações entre si topologia (ou arquitetura topológica topológica)) da inter inter-rede Relembrando... A troca de informações é baseada em algum algoritmo//protocolo específico algoritmo Abstratamente, roteamento é o problema de descobrir um caminho em um grafo, sujeito a uma ou mais restrições O uso de roteamento dinâmico não muda o algoritmo de encaminhamento IP Propagação automática de rotas Internet e Arquitetura TCP/IP Protocolos de Divulgação de Rotas R R R Tabela de Rotas R Copyright 1999, 2000 by TeleMídia Lab. Lab. abstração da conectividade da rede 8 R R R R R R • O grafo é uma 7 R R R Internet Protocol R Alg. de Roteamento X Alg. de Grafo Alg. de Roteamento X Alg. de Grafo TCP/IP N4 TCP/IP N5 N4 N1 N5 N1 R7 R6 R2 N2 R6 R1 Rede ATM R4 R3 R7 R2 R5 N3 R1 R5 R4 N1 N3 R1 R6 N5 R3 N6 R7 R2 N2 R5 R1 R4 N3 Rede ATM R3 R5 N4 N6 R2 N2 R3 R7 R6 N6 R4 9 10 Principais Algoritmos Bellman--Ford Bellman TCP/IP TCP/IP Roteamento Grafos Bellman--Ford Bellman Vetor de Distâncias X X Dijkstra Estado de Enlaces Bellman–Ford Algorithm (solid line denotes a direct link; dashed line denotes distance). Bellman-Ford Equations Obs: when a node k that is not directly connected to j: 11 12 Algoritmo de BellmanBellman-Ford Bellman--Ford Bellman TCP/IP TCP/IP 13 14 Algoritmo de Vetor de Distâncias Algoritmo de Estado de Enlaces TCP/IP Inicialmente, cada roteador possui em sua tabela de rotas uma entrada para cada rede ao qual está ligado diretamente Periodicamente o roteador envia para seus vizinhos um vetor de distâncias e recebe deles outros vetores • Vetor de distâncias = { (Prefixo IP, custo) } Se um desses vetores revela uma rota nova, ou uma rota de menor custo do que uma presente atualmente na tabela de rotas local, esta rota será incorporada na tabela local TCP/IP Cada roteador mantém um estado local (router local state) • Contém informações sobre interfaces operacionais do roteador e vizinhos alcançáveis por meio dessas interfaces Roteador distribui estado local a todos os outros roteadores • Distribuição periódica ou devido a mudanças no estado local Cada roteador constrói uma base de dados descrevendo a arquitetura topológica da interinter-rede (link (link--state database) • Base de dados = {estado local do roteador i}, p/ todo i ∈ AS Cada roteador executa o alg. de Dijkstra sobre sua base • Constrói árvore de caminho mais curto onde o roteador é a 15 raiz 16 Tabelas de rotas em hosts Bacharelado em Informática TCP/IP Disciplina: Internet e Arquitetura Tabela de rotas vazia: TCP/IP • Aprende pelo menos um roteador default por ICMP Router Advertisement • Aprende pelo menos um roteador default por DHCP • Escuta de protocolos de roteamento Um roteador default: todos os datagramas IP são enviados para ele Encaminhamento e roteamento Atualização de tabelas de rotas • Rotas melhores podem ser aprendidas por: Sistemas autônomos – ICMP Redirects se houver outros roteadores mais adequados – Escuta de protocolos de roteamento 17 18 Tabelas de rotas em hosts Tabelas de rotas em roteadores Copyright 1999 1999--2008 by TeleMídia Lab. TCP/IP Mais de um roteador default: capacidade de usar outros roteadores caso o primeiro falhe • Níveis de preferência X roundround-robin Rotas estáticas específicas: • Caso a estação esteja em uma rede com mais de uma saída e não se queira usar ICMP Redirect TCP/IP Hosts podem sempre encaminhar seus datagramas mesmo que só conheçam parcialmente a arquitetura (topológica) da interinterrede E roteadores? Depende da arquitetura da interinterrede Rede 1 R R R R R Rede 2 19 Rede x R R Rede y 20 Arquitetura Original da Internet Arquitetura Original da Internet TCP/IP Baseada em roteadores centrais e um backbone TCP/IP Roteadores centrais que não “conversam” GGP : • ARPANET (controle pela INOC) • Non Non--participating routers routers:: rotas default • Protocolo de roteamento no backbone: GGP (DVA) • Caminhos nãonão-ótimos Problema: pouca escalabilidade Rede Local 4 Rede Local 5 • Retardo e sobrecarga do GGP NR1 NR2 BACKBONE BACKBONE R1 R1 Rede Local 1 Rede Local 1 R2 R3 R2 Rede Local 2 X Rede Local 3 R3 Rede Local 2 Rede Local 3 21 22 Arquitetura Original da Internet Arquitetura Original da Internet TCP/IP Arquitetura permanece pouco escalável: Evoluçção Inicial: Evolu • Novo conceito de “rede local”: interinter-rede controlada por uma autoridade administrativa individual • Roteadores da periferia conhecem parcialmente a topologia Inter--rede 2 Inter Sistema BACKBONE Central R 1 R 2 TCP/IP • Aumento do overhead de roteamento e do tamanho das tabelas de rotas – Pressões contra “mudanças gratuitas” • Crescimento das interinter-redes periféricas – Uso de protocolos de divulgação de rotas também nessas interinter-redes • Integração entre roteamento no sistema central e roteamento nas interinter-redes periféricas R 3 Problema reside na política de roteamento Inter--rede 1 Inter Inter--rede 3 Inter 23 • Responsabilidade e capacidade 24 Sistemas autônomos (Autonomous systems) Bacharelado em Informática Revisão da Arquitetura Disciplina: TCP/IP TCP/IP Divisão da Internet em Sistemas Autônomos (AS), cada AS consistindo em um conjunto de roteadores e redes sob mesma administração Modelo de operação AS é identificado por um número de 16 bits Endereçamento IP Protocolos IP e ICMP BACKBONE Encaminhamento e roteamento AS 0 R1 Atualização de tabelas de rotas R2 Rn ... Sistemas autônomos AS 1 AS 2 25 26 Sistemas autônomos Sistemas autônomos Copyright 1999 1999--2008 by TeleMídia Lab. AS n TCP/IP Definição Clássica • Conjunto de roteadores, administrados de forma única (1 único responsável técnico), que utilizam um protocolo de roteamento interno e métricas em comum para definir rotas dentro de um AS e que utilizam um protocolo de roteamento externo para divulgar e receber rotas de outros AS’s. TCP/IP A princípio não existe um limite teórico para o tamanho de um AS: • pode ser uma simples rede local • pode ser uma rede corporativa inteira • pode ser um conjunto de redes de clientes de um Definição Atual • Conjunto de roteadores, administrados de forma única (1 provedor de acesso Internet único responsável técnico) que possuem uma política de roteamento interno coerente e que anunciam e recebem rotas consistentes de outros AS’s através de um protocolo de roteamento externo. 27 28 Sistemas autônomos Arquitetura da Internet com AS’s TCP/IP AS pode usar um igp - protocolo de roteamento interno - para calcular rotas internas AS usa um egp - protocolo de roteamento externo - para trocar infos. sobre rotas com outros AS’s TCP/IP Primeiro protocolo egp: EGP!!! Restrições: • Roteador de borda só divulga AS1 EGP rotas para redes dentro do seu AS AS0 • EGP só propaga informações de (Sistema alcançabilidade egp igp1 igp2 Roteadores de borda sempre um único backbone central interligando os roteadores de borda 29 30 Descentralização da Arquitetura da Internet TCP/IP G G igp G G igp G G egp egp G igp G igp G G Necessidade de um egp menos restritivo • BGP 31 EGP AS3 • EGP assume que a Internet tenha AS2 Central) AS2 Resumindo: AS1 EGP – Não usa algoritmo para escolha de melhor rota