Sistemas Autônomos e Roteamento na Internet Edgard Jamhour Topologia de Rede de um ISP (Exemplo ADSL) Broadband Remote Access Server (responsável por autenticar e policiar o tráfego do usuário) linha de baixa capacidade PPPoE CPE CPE DSLAM B-RAS CPE linha de alta capacidade usuário acesso borda núcleo Como uma operadora localiza um CPE de outra operadora? CPE CPE CPE CPE CPE CPE CPE CPE CPE CPE CPE CPE operadora 1 operadora 2 Sistema Autônomo (Autonomous System - AS) rede rede rede rede Sistema Autônomo 2 Sistema Autônomo 1 rede Sistema Autônomo 3 rede O que é um AS ? 200.17.1.0/24 Conexão com outro AS B I O AS pode divulgar rotas agrupadas: 200.17.0.0/16 200.17.130.0/24 200.17.2.0/24 I I I 200.17.3.0/24 Autoridades de Registro de Endereço IANA ARIN RIPE NCC AfriNIC LACNIC APNIC América do Norte Europa, Oriente e Asia Central Africa América Latina e Caribe Ásia e Pacífico Exemplos de AS AS PUCPR Número do AS: 13522 Prefixos: 3 Endereços IP:8192 Nome: Pontificia AS GOOGLE Número do AS: 15169 Prefixos: 109 Endereços: 122624 Nome: GOOGLE Descrição :Universidade Catolica do Parana Descrição: Google Inc. País: BR País: US Autoridade de Registro: LACNIC Autoridade de Registro: ARIN Prefixo BGP do endereço www.pucpr.br: 200.192.112.0/21 Prefixo BGP do endereço google.com Prefix:209.85.128.0/17 Backbone e Sistema Autômo são conceitos diferentes Toda operadora é um AS, mas nem todo AS é uma operadora Alguns backbones, como o da RNP, atuam como interligação entre ASs POP = Ponto de Presença POP-PR Curitiba Tipos de AS sentido de divulgação das rotas AS5 stub [peer] AS1 non-transit [transit] [transit] AS2 transit [transit] [transit] [transit] AS4 transit AS3 transit PTT (Ponto de Troca de Tráfego) IXP (Internet Exchange Point) PTT Metro São Paulo http://ptt.br Tipos de Roteadores Sistema Autônomo 2 Sistema Autônomo 1 CPE rede rede rede A Internet é apenas a rota default Conhece apenas rotas no Interior do AS Conhece rotas dos outros AS rede Sistema Autônomo 3 rede Protocolos de Roteamento AS2 AS1 CPE rede rede rede Não precisa de protocolo de roteamento Protocolo de roteamento do tipo IGP (Interior Gateway Protocol) Protocolo de roteamento do tipo EGP (Exterior Gateway Protocol) rede rede AS3 Conceitos Básicos de Roteamento ir até E por B com custo 2 As duas rotas estão da RIB, mas apenas a melhor está na FIB A B C E D ir até E por C com custo 3 Conceitos Básicos de Roteamento estado de enlace 3 2 E B 5 [2] 2 A 1 C F 3 D 1 E B 2 A [4] F D C [2] [4] vetor de distâncias Vetores de Distância rede A por B2 rede A por A.1 acesso a rede A com custo 2 acesso a rede A com custo 1 1 B 2 1 X 2 rede A A C 2 1 D 3 1 acesso a rede A com custo 1 rede A por A.2 rede A por C3 acesso a rede A com custo 2 Estado de Enlace hello hello Link State Database Link State Database B A LSA LSA B novo LSA novo LSA C X A novo LSA D novo LSA novo LSA E Dijkstra Shortest Path First (SPF) • • Princípio: – Encontrar o menor caminho entre um dos nós da rede e todos os demais Estratégia: – Escolher sempre o melhor nó adjacente – Atribuir custos acumulativos a cada nó da rede 10 6 4 B 5 E 2 0 A 1 3 F 1 C 1 D 5 5 4 9 Divisão em Áreas área B resumo das outras áreas (rotas agregadas) ABR: Roteador de Borda de Àrea ABR resumo resumo ABR estado completo da própria área ABR ABR resumo Roteador Intra-Area área A área C Vetores de Caminho 200.17.1.0/24 via SA3 200.17.1.0/24 via SA3 Y Z 200.17.1.0/24 X W EGP SA3 B 200.17.1.0/24 via SA3, SA1 E F C G D I EGP SA2 SA1 200.17.1.0/24 via SA3, SA2 J Protocolos para Redes IP • Vetor de Distâncias – RIP (Routing Information Protocol) • Estado de Enlace – OSPF (Open Shortest Path First) • Vetor de caminho – BGP (Border Gateway Protocol) RIP PASSIVO Usualmente host RIP response Rede 200.192.0.0/24 RIP request ATIVO Usualmente roteador Rede 200.134.51.0/24 RIP response Formato das Mensagens RIP v2 Byte 2 Byte 1 Command (1: request, 2: response) Byte 3 Version (2) Byte 4 Reserved Address Family (0xffff para Autenticação) Cabeçalho Tipo de Autenticação Autenticação Informação de Autenticação X 4 Address Family (2 para IPv4) Tag de Rota IP Address Subnet mask Entradas de Rota .... Next Hop IP Address Metric Autenticação Exemplo: Funcionamento do RIP 200.0.0.1/24 192.168.0.1/24 192.168.0.2/24 3 2 0 0 1 A B 0 1 1 200.0.0.2/24 INTERNET 0.0.0.0/0 192.168.1.1/24 1 C Exemplo de Propagação da Rota 192.168.1.0/24 200.0.0.1/24 192.168.0.1/24 200.0.0.2/24 C B 192.168.1.0/24 via 200.0.0.1 (custo 2) 192.168.1.1/24 3 2 A 192.168.0.2/24 192.168.1.0/24 via 192.168.0.2 (custo 1) 1 IP1 192.168.1.0/24 via IP1 (custo 3) INTERNET 0.0.0.0/0 rota local 192.168.1.0/24 via direta (custo 0) Exemplo de Propagação da Rota 192.168.0.0/24 200.0.0.1/24 192.168.0.1/24 A 1 rota local 192.168.0.0/24 via direta (custo 0) IP1 0.0.0.0/0 C B 192.168.0.0/24 via 200.0.0.1 (custo 1) INTERNET 192.168.1.1/24 3 2 200.0.0.2/24 192.168.0.2/24 192.168.0.0/24 via IP1 (custo 2) 192.168.0.0/24 via 192.168.1.1 (custo 1) rota local 192.168.0.0/24 via direta (custo 0) Exemplo de Propagação das Rotas 0.0.0.0/0 e 200.0.0.0/24 200.0.0.1/24 192.168.0.1/24 192.168.0.2/24 200.0.0.2/24 0.0.0.0/0 via 200.0.0.2 (custo 2) B 0.0.0.0/0 via 192.168.0.1 (custo 3) 200.0.0.0/24 via 192.168.0.1 (custo 1) 1 IP1 INTERNET 0.0.0.0/0 0.0.0.0/0 via 192.168.1.1 (custo 4) 200.0.0.0/24 via 192.168.1.1 (custo 2) 3 2 A 192.168.1.1/24 Rota manual 0.0.0.0/0 via IP_ISP (custo 1) Rota local 200.0.0.0/24 via 200.0.0.1/24 (custo 1) C Tabela de Roteamento do Roteador 1 ROTEADOR 3 Destino Gateway Interface Custo Tipo 192.168.1.0/24 direto 2 0 local 192.168.0.0/24 direto 1 0 local 200.0.0.0/24 192.168.0.1 1 1 RIP 0.0.0.0/0 192.168.0.1 1 3 RIP Gateway Interface Custo Tipo 192.168.1.0/24 192.168.0.2 2 1 RIP 192.168.0.0/24 direto 2 0 local 200.0.0.0/24 direto 1 0 local 0.0.0.0/0 200.0.0.2 1 2 RIP ROTEADOR 2 Destino OSPF: Open Shortest Path First Hello [multicast] Hello [multicast] Database Description [unicast] Database Description [unicast] A Link State Request [unicast] Link State Request [unicast] Link State Update [multicast] Link State Update [multicast] Link State Acknowledge [unicast] Link State Acknowledge [unicast] B Terminologia OSPF BACKBONE OSPF Area 0.0.0.0 Area 0 N1 Area 3 R0 Roteador de Fronteira de Área (ABR) N2 R1 R3 Fronteira de AS R2 R4 R8 R6 R5 Area 1 Roteador de Fronteira de AS (ASBR) R7 Rx Area 2 (Stub) N1 Rede RIP Roteador Designado (Link State Update) vários LSA Roteador Designado de Backup Roteador Designado (Link State Update) vários LSA [224.0.0.5] meio de múltiplo acesso (Link State Update) vários LSA [224.0.0.6] Cabeçalho OSPF Byte 2 Byte 1 Version (2) Byte 3 Tipo de Mensagem Byte 4 Tamanho da Mensagem Identificador de Roteador Identificador de Área Checksum da mensagem Tipo de Autenticação Dados de autenticação ... Reservado ID de Chave Número de sequência Cabeçalho OSPF Tamanho da Autentic. Mensagem Hello Byte 2 Byte 1 Byte 3 Byte 4 Máscara de rede Opções Intervalo de Hello Intervalo de morte do roteador Roteador designado Roteador designado de backup Primeiro Vizinho Outros Vizinhos Mensagem Hello Prioridade Roteador Mensagem DataBase Description Byte 2 Byte 1 Byte 3 MTU da Interface Byte 4 Opções Reservado I M S Número de sequência da descrição do banco de dados Idade do Estado de Enlace Opções Tipo do Est. Enlace Roteador Anunciante Número de sequência do Estado de Enlace Checksum Tamanho Outros Cabeçalhos de Anúncio de Estado de Enlace .... Database Description LSA Header Identificador de Estado de Enlace Mensagens Link State Update Byte 1 Byte 2 Byte 3 Byte 4 Contador de Anúncios (número de LSAs) Opções Idade do Estado de Enlace (LS) Tipo de LS Identificador de estado do enlace Roteador Anunciado Número de Sequência de Estado do Enlace Checksum do Estado de Enlace (LS) Flags Reservado Tamanho Número de Enlaces Identificador de Enlace (IP ou Subrede) Dado do Enlace (Máscara de Subrede) Tipo de Enlace Contador de TOS Métrica Padrão TOS Reservado Métrica do TOS Link State Acknowledge (LSU = N X LSA) Mensagens Link State Acknowledge Byte 2 Byte 1 Byte 3 Idade do Estado de Enlace Byte 4 Opções Tipo do Est. Enlace Identificador de Estado de Enlace Número de sequência do Estado de Enlace Checksum Tamanho Outros Cabeçalhos de Anúncio de Estado de Enlace .... Link State Acknowledge LSA Header Roteador Anunciante BGP: Border Gateway Protocol Open [unicast] Open ou Notification [multicast] A Update [unicast] B Update [unicast] BGP KeepAlive [unicast] KeepAlive [unicast] Speaker Route Refresh [unicast] Route Refresh [unicast] BGP Speaker Cabeçalho BGP Byte 1 Byte 2 Byte 3 Byte 4 Marcador Marcador (cont.) Marcador (cont.) Marcador (cont.) Tamanho da Mensagem Tipo da Mensagem Cabeçalho BGP Open Versão (4) Cabeçalho BGP e Open Byte 2 Byte 1 Byte 3 ID AS Tempo de Suspensão Identificador BGP Tamanho Opcoes Byte 4 Parâmetros Opcionais Parâmetros Opcionais Open Mensagem BGP: Update Byte 1 Byte 2 Byte 3 Byte 4 Tamanho das Rotas Retiradas Corresponde a uma lista de prefixos que está deixando de ser ofertado pelo roteador. Exemplo: 200.1.2.0/24, 200.1.3.0/24, 60.1.0.0/16, etc. Tamanho do Atributos do Caminho Lista de atributos da rota que está sendo anunciada. Cada atributo segue o formato Tipo-Valor-Comprimento Tamanho do NLRI Corresponde a uma lista de prefixos que pode ser acessado através da rota anunciada. Exemplo: 200.1.2.0/24, 200.1.3.0/24, 60.1.0.0/16, etc. Update rotas retiradas atributos de caminho (rota anunciada) informações de acesso a camada de rede Atributos de Caminho AS-PATH: {SA1} NEXT-HOP: B NLRI: {2001.2.0/24, 200.1.3.0/24} 200.1.2.0/24 C D update SA1 A AS-PATH: {SA2} NEXT-HOP: H NLRI: {200.2.2.0/24, 200.2.3.0/24} B AS-PATH: {SA1,SA2} NEXT-HOP: H NLRI: {2001.2.0/24, 200.1.3.0/24} 200.1.3.0/24 G H SA2 E update F 200.2.3.0/24 200.2.2.0/24 K L SA3 I J Conclusão • A Internet está organizada em sistemas autônomos (AS) • A configuração de rotas dos roteadores da Internet é realizada de forma automática, utilizando-se protocolos de roteamento. • Os protocolos de roteamento para rede IP se dividem em duas grandes categorias: IGP (configuração de rotas no interior do AS) e EGP (configuração de rotas entre AS). • Existem vários protocolos IGP para redes IP: RIP, OSPF, IS-IS. Os protocolos baseados em estado de enlace, como o OSPF e o IS-IS são considerado mais adequados para redes grande. • O único protocolo aceito como EGP para Internet é o BGP.