Curso de Redes de Computadores

Documentos relacionados
Visão geral da arquitetura do roteador

Redes de Computadores

Redes TCP/IP. Prof. M.Sc. Alexandre Fraga de Araújo. INSTITUTO FEDERAL DO ESPÍRITO SANTO Campus Cachoeiro de Itapemirim

A camada de rede. A camada de rede. A camada de rede. 4.1 Introdução. 4.2 O que há dentro de um roteador

Redes TCP/IP. Prof. M.Sc. Alexandre Fraga de Araújo. INSTITUTO FEDERAL DO ESPÍRITO SANTO Campus Cachoeiro de Itapemirim

Aula 6 Modelo de Divisão em Camadas TCP/IP

Redes de computadores e a Internet. A camada de rede

Endereço IP Privado. Endereçamento IP. IP Protocolo da Internet. Protocolos da. Camada de Inter-Rede (Internet)

Curso de Redes de Computadores

Arquitetura TCP/IP. Parte VI Entrega de pacotes sem conexão (IP) Fabrízzio Alphonsus A. M. N. Soares

Introdução Introduç ão Rede Rede TCP/IP Roteame Rotea nto nto CIDR

Prof. Luís Rodolfo. Unidade III REDES DE COMPUTADORES E TELECOMUNICAÇÃO

Capítulo 10 - Conceitos Básicos de Roteamento e de Sub-redes. Associação dos Instrutores NetAcademy - Julho de Página

Redes de computadores e a Internet. Capitulo 4. Capítulo. A camada de rede

Protocolo TCP/IP. Protocolo TCP/IP. Protocolo TCP/IP. Protocolo TCP/IP. Conexão de Redes. Protocolo TCP/IP. Arquitetura Internet.

Arquitetura de Rede de Computadores

ICORLI. INSTALAÇÃO, CONFIGURAÇÃO e OPERAÇÃO EM REDES LOCAIS e INTERNET

IP - endereçamento. Endereço IP. Ex.: Identificador de 32 bits para interfaces de roteadores e hospedeiros

Redes de Computadores

Internet Control Message Protocol - ICMP. Rodolfo Riyoei Goya rgoya@uol.com.br

Redes de Computadores

ICMP. Tipos de mensagens ICMP

Aula 4. Pilha de Protocolos TCP/IP:

Serviço de datagrama não confiável Endereçamento hierárquico. Facilidade de fragmentação e remontagem de pacotes

Redes de Computadores I - Protocolos de Controle: ICMP. por Helcio Wagner da Silva

Endereços IP Sem Classe, Endereços Privados e NAT. Prof. Othon M. N. Batista (othonb@yahoo.com) Mestre em Informática

REDES DE COMPUTADORES. Camada de Rede. Prof.: Agostinho S. Riofrio

Camada de Rede. Prof. Leonardo Barreto Campos 1

Redes de Computadores

Comunicação de Dados

Redes de Computadores

ICMP Internet Control Message Protocol

Protocolo IP (Internet Protocol) Características do

Redes de Computadores

Arquitetura do Protocolo da Internet. Aula 05 - Protocolos de Roteamento. Prof. Esp. Camilo Brotas Ribeiro cribeiro@catolica-es.edu.

3) Na configuração de rede, além do endereço IP, é necessário fornecer também uma máscara de subrede válida, conforme o exemplo:

Consulte a exposição. Qual declaração descreve corretamente como R1 irá determinar o melhor caminho para R2?

Centro Tecnológico de Eletroeletrônica César Rodrigues. Atividade Avaliativa

Prof. Samuel Henrique Bucke Brito

BC-0506: Comunicação e Redes Aula 04: Roteamento

Interconexão de Redes Parte 2. Prof. Dr. S. Motoyama

Redes de Computadores 3ª Colecção Exercícios diversos 16 de Dezembro de 2005 Spanning Tree, Protocolo IP, Encaminhamento em redes IP e Cam.

Endereçamento IP, Sub-redes e Roteamento

Teleprocessamento e Redes (MAB-510) Gabarito da Segunda Lista de Exercícios 01/2010

Tabela de roteamento

Redes de Computadores I Conceitos Básicos

Veja abaixo um exemplo de um endereço IP de 32 bits:

Arquitectura de Redes

Arquitetura TCP/IP. Parte III Endereçamento IP e roteamento. Fabrízzio Alphonsus A. M. N. Soares

Capítulo 9 - Conjunto de Protocolos TCP/IP e Endereçamento. Associação dos Instrutores NetAcademy - Julho de Página

Aula 20. Roteamento em Redes de Dados. Eytan Modiano MIT

Funcionamento de ARP entre redes (sub-redes) distintas. Mecanismos de entrega. Funcionamento entre redes (sub-redes): default gateway

Curso: Sistemas de Informação Disciplina: Redes de Computadores Prof. Sergio Estrela Martins

Tecnologia de Redes de Computadores - aula 5

Curso: Redes II (Heterogênea e Convergente) Tema da Aula: Características Roteamento

Packet Tracer 4.0: Overview Session. Conceitos e práticas

IPv6. Problema do espaço de endereços do IPv4 Outros problemas abordados

Redes de Computadores II INF-3A

Capítulo 6 - Protocolos e Roteamento

Modelo em Camadas Arquitetura TCP/IP/Ethernet. Edgard Jamhour

Redes de Computadores

Redes de Computadores

Regras de funcionamento (Unreliable Delivery, etc.) Método de roteamento (Sem conexão) Formato dos dados em um datagrama

Interconexão de Redes Parte 3. Prof. Dr. S. Motoyama

MÓDULO 8 Modelo de Referência TCP/IP

Redes de Computadores II. Professor Airton Ribeiro de Sousa

Aula-19 NAT, IP Móvel e MPLS. Prof. Dr. S. Motoyama

INSTITUTO SUPERIOR DE ENGENHARIA DE LISBOA

Interconexão de redes locais. Repetidores. Pontes (Bridges) Hubs. Pontes (Bridges) Pontes (Bridges) Existência de diferentes padrões de rede

Aula-17 Interconexão de Redes IP (Internet Protocol) Prof. Dr. S. Motoyama

Tecnologia de Redes. Protocolo ICMP

Na Figura a seguir apresento um exemplo de uma "mini-tabela" de roteamento:

Relatório do 2º Guião Laboratorial de Avaliação: Encaminhamento de pacotes. Licenciatura: ETI Turma : ETC1 Grupo : rd2_t3_02 Data: 30/10/2009

** Distance Vector - Trabalha com a métrica de Salto(HOP),. O protocolo que implementa o Distance Vector é o RIP.!

Disciplina Fundamentos de Redes. Introdução ao Endereço IP. Professor Airton Ribeiro de Sousa Outubro de 2014

Redes de Computadores

Redes TCP/IP. Prof. M.Sc. Alexandre Fraga de Araújo. INSTITUTO FEDERAL DO ESPÍRITO SANTO Campus Cachoeiro de Itapemirim

Redes de Computadores

Capítulo 4 - Roteamento e Roteadores

Rede d s d e d Com o pu p t u ado d r o es Conceitos Básicos M d o e d los o de d Re R de d s:

Há dois tipos de configurações bidirecionais usados na comunicação em uma rede Ethernet:

UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática

Entendendo como funciona o NAT

INTERNET = ARQUITETURA TCP/IP

Capítulo 7 CAMADA DE TRANSPORTE

Aula-16 Interconexão de Redes IP (Internet Protocol) Prof. Dr. S. Motoyama

Prefixo a ser comparado Interface Senão 3

Preparando um esquema de endereçamento de sua rede

REDES DE COMPUTADORES

CCNA 1 Modelos OSI e TCP/IP. Kraemer

Estrutura da Internet

Projeto de Redes de Computadores. Projeto do Esquema de Endereçamento e de Nomes

ESCOLA SUPERIOR DE TECNOLOGIA E GESTÃO

Redes. Pablo Rodriguez de Almeida Gross

Conteúdo. Endereçamento IP Sub-redes VLSM Variable Length Subnetwork Mask CIDR Classless Inter-Domain Routing

ESTUDOS REALIZADOS. Camada Física. Redes de Computadores AULA 13 CAMADA DE REDE. Camada Física Camada de Enlace Subcamada de Acesso ao Meio AGORA:

Camada de rede: IP. Cabeçalho IP, encaminhamento de pacotes IP, sub-redes, máscara de sub-redes e processos de cálculo, NAT e PAT, futuro do IPv4.

Transcrição:

Curso de Redes de Computadores Adriano Mauro Cansian adriano@acmesecurity.org Capítulo 4 Camada de Rede 1 Capítulo 4: Camada de Rede Metas: q Entender os princípios em que se fundamentam os serviços de rede: Roteamento Escalabilidade. Implementação na Internet. Veremos: q Serviços da camada de rede. q Como funciona um roteador. q Endereços IP. q Princípio de roteamento. q Roteamento hierárquico. AS q Protocolos de roteamento da Internet. Dentro de um domínio. Entre domínios 2 Prof. Dr. Adriano Mauro Cansian 1

Funções da camada de rede (1) q Prover transporte de pacotes fim-a-fim. Ligar hosts com hosts. Lembrar do exemplo dos primos que moram em casas em estados diferentes e querem trocar cartas entre si. Analogia com o correio e carteiro que roteia as cartas q Exigências que devem ser atendidas: Suportar pilhas de protocolos inferiores diferentes. Admitir camadas inferiores heterogêneas. Admitir organização em múltiplos domínios. Ligação de redes com redes inter-net = Internetworking. 3 Funções da camada de rede (2) q Missão: Transportar pacotes do host emissor ao receptor. q Protocolo da camada de rede: presente em hosts e routers. Três funções importantes: q Determinação do caminho: rota seguida por pacotes da origem ao destino. q Usa algoritmos de roteamento. q Comutação: mover pacotes dentro do roteador, da entrada até a saída apropriada. q Estabelecimento da chamada: algumas arquiteturas de rede requerem determinar o caminho antes de enviar os dados. aplicação transporte rede enlace física rede enlace física rede enlace física Note que os roteadores intermediários não precisam das camadas superiores da pilha TCP/IP, ainda que elas sejam implementadas para prover serviços de acesso ao roteador rede enlace física rede enlace física rede enlace física rede enlace física Não acontece na Internet rede enlace física rede enlace física aplicação transporte rede enlace física 4 Prof. Dr. Adriano Mauro Cansian 2

Funções da camada de rede (3) No lado transmissor: Encapsula os segmentos em datagramas. No lado receptor: Entrega os segmentos à camada de transporte (desencapsula). Roteador: Examina campos de cabeçalho em todos os datagramas IP que passam por ele. Toma decisões de roteamento. É stateless. Funções-chave da camada de rede: q Roteamento: Determinar a rota a ser seguida pelos pacotes. q Comutação ou repasse: Mover pacotes dentro do roteador, da entrada para a saída apropriada. q Algoritmos de roteamento - analogia: Roteamento: processo de planejar a viagem para saber qual caminho seguir. Comutação: processo de passar por um único cruzamento. Prof. Dr. Adriano Mauro Cansian 3

Rede de datagramas: o modelo da Internet q Não requer estabelecimento de chamada na camada de rede q Não guarda estado sobre transmissões. Não existe o conceito de conexão na camada de rede. q Pacotes são roteados usando endereços de destino. Cada camada de rede vai carimbar o pacote com endereço, e enviar. Dois pacotes podem seguir caminhos diferentes até destino. aplicação transporte rede enlace física 1. envia dados 2. recebe dados aplicação transporte rede enlace física 7 Tabela de comutação ou repasse Considerando o espaço de endereçamento no IPv4 (atual) existem 4 bilhões de entradas possíveis. Destination Address Range Link Interface 11001000 00010111 00010000 00000000! até 0 11001000 00010111 00010111 11111111! ----------------------------------------------------------------------------------------------------- 11001000 00010111 00011000 00000000! até 1 11001000 00010111 00011000 11111111! ----------------------------------------------------------------------------------------------------- 11001000 00010111 00011001 00000000! até 2 11001000 00010111 00011111 11111111! ----------------------------------------------------------------------------------------------------- caso contrário 3 Prof. Dr. Adriano Mauro Cansian 4

Decisão de repasse Prefix Match Link Interface 11001000 00010111 00010 0 11001000 00010111 00011000 1 11001000 00010111 00011 2 Qualquer outro 3 Exemplos 11001000 00010111 00010110 10100001 Qual interface? 11001000 00010111 00011000 10101010 Qual interface? Decisão de repasse Prefix Match Link Interface 11001000 00010111 00010 0 11001000 00010111 00011000 1 11001000 00010111 00011 2 Qualquer outro 3 Exemplos 11001000 00010111 00010110 10100001! Qual interface? 11001000 00010111 00011000 10101010! Qual interface? 1 Regra do maior prefixo: o prefixo mais longo na tabela de roteamento tem precedência na decisão. 0 Prof. Dr. Adriano Mauro Cansian 5

O que há dentro do roteador? Visão geral da arquitetura de um roteador 11 Visão Geral de Arquitetura de Roteadores q Roteadores possuem 2 funções fundamentais: Executar algoritmos e protocolos de roteamento. RIP, OSPF, BGP, dentre outros. Repassar(*) datagramas da interface de entrada para a saída. Por intermédio da malha (ou matriz) de comutação (switch fabric). (*) Repassar ou Comutar. 12 Prof. Dr. Adriano Mauro Cansian 6

Funções da Porta de Entrada Camada física: recepção de bits Camada de enlace: Exemplo: Fast ethernet Comutação descentralizada: q q q Verifica o destino do datagrama, e procura qual porta de saída. Usa tabela de rotas na memória da porta de entrada. Meta: fazer processamento da porta de entrada na velocidade da linha. Formação de Filas: acontece se datagramas chegam mais rápido que taxa de re-envio para matriz de comutação 13 Três tipos de matriz de comutação serão vistas em seguida Dentro do roteador existe uma das 3 principais estruturas de comutação 14 Prof. Dr. Adriano Mauro Cansian 7

1. Comutação via Memória q Presentes nos roteadores da primeira geração. q Pacote é copiado para a memória pelo processador do sistema. Ocorre um gargalo: processamento único. q Depois é lido para fazer o repasse. q A velocidade limitada pela largura de banda da memória. 2 travessias do barramento por cada datagrama (entra e sai na memória). Porta de Entrada Memória Porta de Saída Roteadores atuais / modernos: q Colocam processador da porta de entrada: q Consulta tabela e copia para a memória. Barramento do Sistema 15 2. Comutação via Barramento q Datagrama viaja da memória da porta de entrada à memória da porta de saída. Por intermédio de um barramento compartilhado. q Contenção pelo barramento: Taxa de comutação limitada pela largura de banda do barramento. Datagramas competem pelo uso do barramento. q Barramento de 1 a 100 Gbps são comuns. Velocidade suficiente para roteadores de acesso e corporativos (mas não de backbone). 16 Prof. Dr. Adriano Mauro Cansian 8

3. Comutação cross-bar (Rede ou matriz de Interconexão) q Supera limitações dos barramentos. q Matrizes de interconexão desenvolvidas inicialmente para interligar processadores num multiprocessador (Redes Banyan). q Consiste de 2n barramentos, conectando n portas de entrada com n portas de saída. q Portas podem conversar ao mesmo tempo na matriz. Taxas mais comuns atuais variam de 200 Gbps a 1 Tbps pela rede de interconexão. Já existem roteadores de 100 Tbps. Indicado para roteadores de backbone. 17 Comutação cross-bar Portas podem conversar ao mesmo tempo na matriz. 18 Prof. Dr. Adriano Mauro Cansian 9

Porta de Saída q Buffers necessários quando datagramas chegam da matriz de comutação mais rápido do que a taxa de transmissão do enlace. q Eventualmente há disciplina de escalonamento: escolha dos datagramas enfileirados para transmissão. Pode haver usar o campo TOS no header do datagrama IP. (será discutido mais adiante). 19 Filas e perdas na Porta de Saída q Usa buffers quando taxa de chegada através do comutador excede taxa de transmissão de saída. q Ocorre enfileiramento (atraso) e perdas devido ao transbordamento do buffer da porta de saída. 20 Prof. Dr. Adriano Mauro Cansian 10

Filas e perdas na Porta de Entrada: Bloqueio Head-of-Line (HOL) q Se matriz de comutação é mais lenta do que a soma das portas de entrada juntas pode haver filas nas portas de entrada. q Bloqueio HOL: datagrama na cabeça da fila impede outros na mesma fila de avançarem. Acontecem atrasos de enfileiramento e perdas, devido ao transbordamento do buffer de entrada. 21 Bloqueio HOL 1 A B 2 1 Pacote vermelho está sendo enviado para porta A. 2 Pacote vermelho também quer ir para A Mas esta impedido até que 1 termine. 2 Pacote verde quer ir para B que está livre. Mas está impedido até que o pacote vermelho da sua frente seja enviado. 22 Prof. Dr. Adriano Mauro Cansian 11

A Camada de Rede na Internet 23 A Camada de Rede na Internet Camada de Transporte: TCP e UDP! Camada de rede Protocolos de roteamento! Escolha de caminhos! RIP, OSPF, BGP! Tabela de rotas Protocolo IP Endereçamento. Formato dos datagramas. Tratamento de pacotes. Protocolo ICMP Aviso de erros e testes. Sinalização de rotas. Camada de enlace (datalink)! Camada física! 24 Prof. Dr. Adriano Mauro Cansian 12

Datagrama IP Especificações do Protocolo 25 Formato do datagrama IP (1) número da versão do protocolo IP comprimento do cabeçalho em palavras de 32 bits tipo dos dados (TOS) TTL - Time to Live. número máximo de enlaces restantes (decrementado a cada roteador) protocolo da camada superior ao qual entregar os dados ver comp. tipo de cab serviço ident. 16-bits TTL 32 bits camada superior comprimento início do bits fragmento checksum Internet endereço IP de origem 32 bits endereço IP de destino 32 bits Opções (se houver) dados (comprimento variável, tipicamente um segmento TCP ou UDP) comprimento total do datagrama (em bytes) para fragmentação e remontagem Checksum envolve apenas verificação do cabeçalho (não dos dados). Exemplo: temporizador, Registro de rota seguida, especificar caminho, etc... Na prática: NUNCA USADO. 26 Prof. Dr. Adriano Mauro Cansian 13

Formato do datagrama IP (2) 32 Bits Version IHL Type of service Total length Identification Fragment offset Time to live Protocol Header checksum Versão: o primeiro campo do cabeçalho de um datagrama IPv4 é o campo de versão, com 4 bits. Source address Destination address IHL: o segundo campo, de quatro bits, é o Comprimento do Cabeçalho ou IHL (Internet Header Length) contendo o número de palavras de 32 bits no cabeçalho IPv4. Options (0 or more words) Um cabeçalho mínimo tem vinte bytes de comprimento, logo o valor mínimo em decimal no campo IHL é 5 (5 x 32 bits = 20 bytes). D F M F Tamanho total: campo de 16 bits define o tamanho TOTAL do datagrama (cabeçalho + dados), em bytes. O valor do campo tamanho mínimo é de 20 bytes. Então, o tamanho máximo possível é 65.536 bytes (64 Kbytes). 27 Formato do datagrama IP (3) 32 Bits Version IHL Type of service Total length Time to live Identification Protocol Fragment offset Header checksum Protocolo: com 8 bits define o código Source decimal address do protocolo que o IP está carregando no campo de dados. A IANA - Internet Assigned Numbers Authority mantém a lista com os Destination address números de protocolos. Os protocolos comuns e os seus valores decimais incluem o ICMP (1), o TCP (6) e o Options (0 or more words) UDP (17). Ver http://www.iana.org/assignments/protocol-numbers. D F M F TTL (Time To Live): evita que os datagramas persistam numa rede (por exemplo, evitando loopings de roteamento). É setado na origem. Historicamente o campo TTL limitaria a vida de um datagrama em segundos, mas tornou-se num campo de contagem de nós caminhados (chamado de hop count). Roteador onde um datagrama atravessa decrementa o campo TTL em 1. Quando o campo TTL chega a zero, o pacote não é enviado e deve ser descartado. Datagrama ICMP de erro (ICMP 11 Time Exceeded) é enviado de volta ao emissor 28 Prof. Dr. Adriano Mauro Cansian 14

MTU e adaptação a redes diferentes SLIP : 256 Ethernet : 1500 Internet PPP : 1500 ADSL: 512 29 IP: Fragmentação & Remontagem (1) Host A Rede 1 MTU = 1.500?? Router 1 Router 2?? Rede 2 MTU=620 Rede 3 MTU=1.500 Host B Um datagrama pode passar por muitos tipos de redes físicas diferentes, à medida que se move dentro das interligações das redes, até alcançar seu destino final. Como a rede define um tamanho de datagrama que se encaixe no frame e como trata datagramas maiores do que sua camada de enlace pode suportar? 30 Prof. Dr. Adriano Mauro Cansian 15

IP: Fragmentação & Remontagem (2) q q Cada enlace de rede tem uma MTU (Maximum Transmission Unit) - maior tamanho possível de FRAME neste enlace. Tipos diferentes de enlace têm MTUs diferentes. Quando há um datagrama IP muito grande a ser enviado numa é dividido ( fragmentado ) dentro da rede. Um datagrama se transforma em vários datagramas. São remontados apenas no destino final. Bits do cabeçalho IP são usados para identificar, ordenar fragmentos relacionados. remontagem Fragmentação: entrada: um datagrama grande saída: 3 datagramas menores 31 IP: Fragmentação & Remontagem (3) Campos do Protocolo IP utilizados! 32 Bits Version IHL Type of service Total length Time to live Identification Protocol D F Source address M F Destination address Fragment offset Header checksum Options (0 or more words) 32 Prof. Dr. Adriano Mauro Cansian 16

IP: Fragmentação & Remontagem (4) q O IP representa o deslocamento de dados em múltiplo de 8 bytes. Portanto, o tamanho do fragmento precisa ser um maior múltiplo de 8 possível para aquela rede. Roteadores precisam aceitar datagramas até o máximo de MTUs das redes às quais se conectam. Hosts e roteadores são obrigados aceitar e remontar, se necessário, datagramas de no mínimo 576 octetos. 33 IP: Fragmentação & Remontagem (4) compr =4000 ID =x bit_frag =0 início =0 um datagrama grande vira vários datagramas menores compr =1500 ID =x bit_frag =1 início =0 compr =1500 compr =1040 ID =x ID =x bit_frag =1 início =1480 bit_frag início =0 =2960 34 Prof. Dr. Adriano Mauro Cansian 17

Controle IP Fragmentação Identifica o datagrama Indicando que existe mais fragmentos Indica a posição do fragmento em relação ao datagrama 35 Controle IP Fragmentação Indicando que não há mais fragmentos, deste datagrama e a sua posição no datagrama final 36 Prof. Dr. Adriano Mauro Cansian 18

Controle IP Fragmentação Indica Identificação se existe do mais datagrama fragmentos 0x749b indica para o mesmo o datagrama Indica datagrama a posição 0x749b do fragmento no datagrama 0x749b 37 Endereçamento IP 38 Prof. Dr. Adriano Mauro Cansian 19

Endereçamento IP q Um endereço IP consiste de 32 bits, divididos em dois campos: ID de rede (network number). ID do host (host number). q Os endereços IP são escritos em notação decimal: xxx. yyy. zzz. kkk 223. 1. 1. 1 11011111 00000001 00000001 00000001 q Grupo decimal (entre os pontos decimais) é conhecido como um octeto q à é o decimal equivalente aos 8 bits do endereço binário. q Endereço de 4 Octetos (4 quatro grupos de 8 bits). 39 Endereço IP notação decimal 2 7 2 6 2 5 2 4 2 3 2 2 2 1 2 0 2 7 2 6 2 5 2 4 2 3 2 2 2 1 2 0 2 7 2 6 2 5 2 4 2 3 2 2 2 1 2 0 2 7 2 6 2 5 2 4 2 3 2 2 2 1 2 0 10000000 00001010 00000010 00011110 notação binária 2 7 =128 2 3 +2 1 =10 2 1 =2 2 4 +2 3 +2 2 +2 1 =30 128.10.2.30 notação decimal pontuada (alguns endereços são reservados. Serão tratados mais adiante). 40 Prof. Dr. Adriano Mauro Cansian 20

Endereços de host e de rede Endereço IP de 32 bits Identificador da rede Identificador do host host hosts com identificadores de rede distintos. REDE 1 REDE 3 internet REDE 2 REDE 4 hosts com o mesmo identificador de rede. 41 Endereçamento hosts e redes (1) q Endereço IP: identificador de 32-bits para interface do host ou roteador. q Interface: conexão entre estação, roteador e enlace físico. Roteador típico tem múltiplas interfaces. Endereço IP é associado à interface, e não à estação ou roteador. 223.1.1.1 223.1.2.1 223.1.1.2 223.1.1.4 223.1.2.9 223.1.1.3 223.1.3.1 223.1.3.27 223.1.2.2 223.1.3.2 223.1.1.1 = 11011111 00000001 00000001 00000001 223 1 1 1 42 Prof. Dr. Adriano Mauro Cansian 21

Endereçamento hosts e redes (2) q Endereço IP: Uma parte de rede. (bits de mais alta ordem). Uma parte de host. (bits de mais baixa ordem). q Uma rede IP: Conjunto de Interfaces de dispositivos com o mesmo campo de rede nos seus endereços IP. Podem alcançar um ao outro sem passar por um roteador. 223.1.1.1 223.1.2.1 223.1.1.2 223.1.1.4 223.1.2.9 223.1.1.3 223.1.3.1 223.1.3.27 LAN 223.1.2.2 223.1.3.2 Esta parte da rede consiste de 3 interfaces IP com os endereços IP começando com 223.1.3. Os primeiros 24 bits são o campo de rede. 43 Endereçamento hosts e redes (3) 223.1.1.1 223.1.2.1 223.1.1.2 223.1.1.4 223.1.2.9 223.1.1.3 223.1.3.27 223.1.2.2 Internet 223.1.3.1 LAN 223.1.3.2 Este conjunto de redes consiste numa rede com 3 redes, cujos os endereços IP começam com 223.1. Sub-redes de uma rede maior. 44 Prof. Dr. Adriano Mauro Cansian 22

Endereçamento hosts e redes (4) 223.1.1.1 223.1.1.2 223.1.1.4 Sistema interligado consistindo de seis redes 223.1.9.2 223.1.1.3 223.1.7.0 223.1.9.1 223.1.8.1 223.1.8.0 223.1.7.1 223.1.2.6 223.1.3.27 223.1.2.1 223.1.2.2 223.1.3.1 223.1.3.2 45 Endereçamento IP: CIDR q CIDR: Classless InterDomain Routing Parte de rede do endereço de comprimento arbitrário. Formato de endereço: a.b.c.d/x /x é número de bits no campo de rede do endereço. parte de rede parte do host 11001000 00010111 00010000 00000000 200.23.16.0/23 46 Prof. Dr. Adriano Mauro Cansian 23

Endereços reservados de REDE e BROADCAST (1) Exemplos de Endereços de REDE: Para se referir a uma rede os bits do campo de host são colocado como 0. O endereço /16 identificado como 137.4.0.0/16 Refere-se à rede 137.4.*.*! O endereço /24 identificado como 200.17.28.0/24 Refere-se à rede 200.17.28.*! 47 Endereços reservados de REDE e BROADCAST (2) Endereços de broadcast q Um endereço que se refere a todos os hosts em uma rede é um endereço de broadcast. q Exemplos: Para se referir a todos os nós de uma rede em particular, os bits de host são ajustados para 1. O endereço 15.255.255.255/8 Refere-se a todos os nós da rede 15 /8 O endereço 200.17.28.255! Refere-se a todos os nós da rede 200.17.28 /24! 48 Prof. Dr. Adriano Mauro Cansian 24

Subneting e subnetmask (1) q Algumas vezes pode ser necessário subdividir um conjunto de endereços IP para criar redes menores, ou seja, subredes. q Máscaras de sub-rede (subnetmasking) são usadas para subdividir redes. Os administradores podem definir o campo de subnetmask para dividir uma rede em sub-redes menores, de acordo com a conveniência necessária. q A máscara de sub-rede diz para um roteador ou software específico quais comprimento dos campos de rede e de host devem ser considerados. Como vimos na notação CIDR, a / indica a máscara aplicada. Exemplo: 200.23.16.0/23 49 Subneting e subnetmask (2) Exemplo: divisão de uma rede /24 em redes menores. Os 8 bits de host estão sendo subdivididos para criar subredes menores: no exemplo usando 3 bits para redes e 5 bits para hosts. Passa a existir a possibilidade de 8 subredes para serem usadas e a máscara de subrede interna passa a ser / 27. 50 Prof. Dr. Adriano Mauro Cansian 25

Subneting e subnetmask (3) Funcionamento e obtenção da máscara: q A parte do endereço IP correspondente à identificação do host (ou seja, o hostid) é dividida: Um bit ligado (1) à indicará que aquele bit deverá ser interpretado como parte do número de sub-rede. Um bit desligado (0) à indicará que aquele bit deverá ser interpretado como parte do número de identificação de hostid. q Em seguida à cada grupo de 8 bits é convertido para seu decimal equivalente, indicando a subnetmask. 51 Subneting e subnetmask (4) Considere os 8 bits identificadores de host num endereço de uma rede /24. Se quisermos dividir uma rede /24 em 4 subredes! vamos utilizar 2 bits para identificar a subrede e 6 bits para identificar os hosts. Máscara resultante = /26 ou 255.255.255.192 Rede (decimal) subnet subnet host host host host host host 255.255.255. 1 1 0 0 0 0 0 0 Binário 11000000 = 192 Resulta na subnetmask! 255.255.255.192 Esta divisão permite, na prática, utilizar 2 sub-redes de 64 hosts, pois as subredes que começam com 00 e 11 são reservadas e não podem ser utilizadas! isso ocorre devido à identificação dos endereços de rede (all-0s, ou seja todos os endereços de host com bit 0) e endereço de broadcast (all-1s, ou seja todos os endereços de host com bit 1) 52 Prof. Dr. Adriano Mauro Cansian 26

Subneting e subnetmask (5) 200.17.28.66/26! IP Address subnetmask Hostid Binário End. Sub-rede Interpretação 200.17.28.66 255.255.255.192 66 = 01000010 (1 ª rede, host 2) 200.17.28.135 255.255.255.192 135 = 10000111 (2 ª rede, host 7) 200.17.28.64 (01000000) 200.17.28.128 (10000000) Host 2 (000010) na subrede 200.17.28.64 Host 7 (000111) na subrede 200.17.28.128 200.17.28.135/26! 53 Subneting e subnetmask (6) Se quisermos dividir uma rede /24 em 16 subredes! vamos utilizar 4 bits para identificar a subrede e 4 bits para identificar os hosts. Máscara resultante = /28 Isso nos dá a possibilidade de 16 sub-redes de 16 hosts, das quais 14 sub-redes podem ser usadas! novamente se perdem as subredes que começam com 0000 e 1111 (all-zero e all-one). Cálculo da máscara: Rede (decimal) subnet subnet subnet subnet host host host host 255.255.255. 1 1 1 1 0 0 0 0 Binário 11110000 = 240 Resulta na subnetmask! 255.255.255.240 54 Prof. Dr. Adriano Mauro Cansian 27

Subnetmask: tabelinha 55 Endereços reservados (1) q Ou endereços privados (categoria 1) q 1 REDE /8: 10.0.0.0 a 10.255.255.255! q 16 REDES /16: 172.16.0.0 a 172.31.255.255! q 256 REDES /24: 192.168.0.0 a 192.168.255.255! q Também chamados de: Endereços não roteáveis ou redes não roteáveis. Usados para redes locais. 56 Prof. Dr. Adriano Mauro Cansian 28

Endereços reservados (2) q Não podem ser atribuídos a nenhuma estação: 127.0.0.1: Endereço de Loopack nnn.nnn.nnn.255:! BroadCast : todos os bits de host ajustados para 1. n.n.n.255 Exemplo: End. BroadCast para rede /24 n.n.255.255 Exemplo: End. BroadCast para rede /16 n.255.255.255 Exemplo: End. BroadCast para rede /8 nnn.nnn.nnn.000: Network: todos os bits de host ajustados para 0. n.n.n.0 Exemplo: End. Rede para rede /24 n.n.0.0 Exemplo: End. Rede para rede /16 n.0.0.0 Exemplo: End. Rede para rede /8 0.0.0.0: Endereço de Inicialização (DHCP) 57 Subdivisão de redes e roteamento Regra do prefixo mais longo 58 Prof. Dr. Adriano Mauro Cansian 29

Como subdividir uma rede q Alocação a partir do espaço de endereços do provedor IP. q Provedor pode subdividir sua alocação: digamos que ele tem um /20, então pode entregar /23 aos seus clientes: Bloco do 11001000 00010111 00010000 00000000 200.23.16.0/20 provedor 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 59 Endereçamento hierárquico: agregação de rotas Endereçamento hierárquico permite anunciar informação sobre rotas de forma eficiente e sumarizada Organização 0 200.23.16.0/23 Organização N1 200.23.18.0/23 Organização N2 200.23.20.0/23 Organização N7. 200.23.30.0/23. Provedor A Mande-me qualquer coisa com endereços que começam com 200.23.16.0/20 Internet Mega-empresa A 199.31.. /16 Provedor B Mande-me qualquer coisa com endereços que começam com 199.31.0.0/16 60 Prof. Dr. Adriano Mauro Cansian 30

Endereçamento hierárquico: rotas mais específicas Organização 1 precisou mudar de provedor ou empresa, mas precisa levar os Ips: Provedor B agora anuncia uma nova rota mais específica para a Organização 1. Organização 0 200.23.16.0/23 Mande-me qualquer coisa com endereços que começam com 200.23.16.0/20 Organização 2 200.23.20.0/23 Organização 7. 200.23.30.0/23. Provedor A Internet Provedor B Organização 1 200.23.18.0/23 Mega-empresa A 199.31.. /16 Mande-me qualquer coisa com endereços que começam com 199.31.0.0/16 ou 200.23.18.0/23 61 Endereçamento hierárquico: rotas mais específicas Organização 0 200.23.16.0/23 Organização 2 200.23.20.0/23 Organização 7. 200.23.30.0/23 Organização 1 200.23.18.0/23 Mega-empresa A 199.31.. /16 Quando outros roteadores virem o anúncio dos blocos de endereço 200.23.16.0/20 e 200.23.18.0/23 e quiserem rotear para um endereço no bloco 200.23.18.0/23 eles vão usar a regra de ajuste ao prefixo mais longo e rotear em direção endereço de rede maior (mais específico) que casa com o endereço de destino.. Provedor A mande-me qq coisa com endereços que começam com 200.23.16.0/20 Internet Provedor B mande-me qq coisa com endereços que começam com 199.31.0.0/16 ou 200.23.18.0/23 62 Prof. Dr. Adriano Mauro Cansian 31

Endereçamento IP - Governança Como um provedor IP consegue um bloco de endereços? ICANN: Internet Corporation for Assigned Names and Numbers (http://www.icann.org) Aloca endereços. Gerencia DNS. Aloca nomes de domínio e resolve disputas. No Brasil, estas funções foram delegadas ao Registro Nacional (http://registro.br), sediado na FAPESP (SP), e comandado pelo Comitê Gestor Internet BR (CG-Br) 63 Encaminhamento de datagramas 64 Prof. Dr. Adriano Mauro Cansian 32

Envio de datagramas Para transferir um datagrama o emissor: 1. Encapsula o datagrama num quadro da camada de enlace, 2. Mapeia o endereço IP de destino em um endereço físico (endereço MAC) e, 3. Usa o hardware da rede local para entregar Camada Datalink (MAC). 65 Envio de datagramas mapeamento de endereço 66 Prof. Dr. Adriano Mauro Cansian 33

Encaminhamento direto q Emissor: (1.) extrai a parte da rede do endereço IP de destino, e (2.) compara à parte de rede de seu próprio endereço. Se houver correspondência, significa que o datagrama pode ser enviado diretamente, na mesma rede. q Encaminhamento direto é sempre o passo final de qualquer transmissão de datagrama. Sempre o roteador final se conectará diretamente à mesma rede física do destino. Chamado de último passo da rota (last hop). 67 Encaminhamento indireto q Quando um host deseja enviar algo para outro host à encapsula o datagrama, e o envia ao roteador mais próximo (gateway de saída). q O datagrama passa de roteador a roteador, até chegar a um que possa entrega-lo diretamente. q Quando um frame chega no roteador: O software do roteador extrai o datagrama encapsulado, e seleciona o próximo roteador ao longo do caminho em direção ao destino. 68 Prof. Dr. Adriano Mauro Cansian 34

Enviando um datagrama da origem ao destino (1) datagrama IP: Campos misc end. IP origem end. IP dest dados tabela de rotas em A rede dest. próx. rot. N enlaces 223.1.1 1 223.1.2 223.1.1.4 2 223.1.3 223.1.1.4 2 q Datagrama permanece inalterado, enquanto passa da origem ao destino. A B 223.1.1.1 223.1.2.1 223.1.1.2 223.1.1.4 223.1.2.9 223.1.1.3 223.1.3.27 223.1.3.1 223.1.2.2 E 223.1.3.2 69 Enviando um datagrama da origem ao destino (2) campos misc 223.1.1.1 223.1.1.3 dados Seja um datagrama IP originando em A, e endereçado a B: q A procura endereço de rede de B. q A descobre que B é da mesma rede que A (usando o prefixo do endereço). q Camada de enlace de A envia o datagrama diretamente para B num frame da rede local. B e A são chamados de diretamente conectados. A B rede dest. próx. rot. 223.1.1 1 223.1.2 223.1.1.4 2 223.1.3 223.1.1.4 2 223.1.1.1 223.1.2.1 223.1.1.2 223.1.1.4 223.1.2.9 223.1.1.3 223.1.3.1 223.1.3.27 N enlaces 223.1.2.2 E 223.1.3.2 70 Prof. Dr. Adriano Mauro Cansian 35

Enviando um datagrama da origem ao destino (3) campos misc 223.1.1.1 223.1.2.2 dados Seja origem A, destino E: q Procura endereço de rede de E. q E está numa rede diferente A e E não diretamente conectados. q Tabela de rotas: próximo roteador na rota para E é 223.1.1.4. q Camada de enlace envia datagrama ao roteador 223.1.1.4 num frame da camada de enlace. q Datagrama chega a 223.1.1.4 q e então segue A B rede dest. próx. rot. 223.1.1 1 223.1.2 223.1.1.4 2 223.1.3 223.1.1.4 2 223.1.1.1 223.1.2.1 223.1.1.2 223.1.1.4 223.1.2.9 223.1.1.3 223.1.3.1 223.1.3.27 N enlaces 223.1.2.2 E 223.1.3.2 71 Enviando um datagrama da origem ao destino (4) Campos misc 223.1.1.1 223.1.2.2 dados Chegando a 223.1.1.4, destinado a 223.1.2.2 q Procura endereço de rede de E. q E fica na mesma rede que a interface 223.1.2.9 do roteador. Roteador e E estão diretamente conectados. q Camada de enlace envia datagrama para 223.1.2.2 dentro de frame de camada de enlace via interface 223.1.2.9 q Datagrama chega a 223.1.2.2 rede próx. dest. rot. N enl. 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 A B 223.1.1.1 223.1.2.1 223.1.1.2 223.1.1.4 223.1.2.9 223.1.1.3 223.1.3.1 223.1.3.27 223.1.2.2 E 223.1.3.2 72 Prof. Dr. Adriano Mauro Cansian 36

NAT: Network Address Translation 73 NAT: Network Address Translation (1) q Redes locais podem utilizar apenas um endereço IP de entrada e saída. q Não é preciso alocar uma gama de endereços do ISP. q Motivação: Esgotamento dos endereços IPv4. Permitir alterar os endereços dos dispositivos na rede local sem precisar notificar o mundo exterior. Redes não roteáveis Mudar de ISP sem alterar os endereços na rede local. Dispositivos da rede local não são explicitamente endereçáveis ou visíveis pelo mundo exterior (um adicional de segurança?). Prof. Dr. Adriano Mauro Cansian 37

NAT: Network Address Translation (2) restante da Internet 138.76.29.7 NAT 10.0.0.4 rede local (ex.: rede doméstica) 10.0.0/24 10.0.0.1 10.0.0.2 10.0.0.3 todos os datagramas que saem da rede local possuem o mesmo e único endereço IP do NAT de origem: 138.76.29.7, números diferentes de portas de origem. datagramas com origem ou destino nesta rede possuem endereço 10.0.0/24 para origem, destino (usualmente) NAT: Network Address Translation (3) 2: roteador NAT substitui end. origem do datagram de 10.0.0.1, 3345 para 138.76.29.7, 5001, atualiza a tabela 1: hospedeiro 10.0.0.1 envia datagrama para 128.119.40, 80 3: resposta chega endereço de destino: 138.76.29.7, 5001 4: roteador NAT substitui o endereço de destino do datagrama de 138.76.29.7, 5001 para 10.0.0.1, 3345 Prof. Dr. Adriano Mauro Cansian 38

NAT: Network Address Translation (4) Implementação: o roteador NAT deve: q Datagramas que saem: Substituir (endereço IP de origem interno, porta #) para (endereço IP válido do NAT, nova porta #). q... Hosts remotos respondem usando (endereço IP do NAT, nova porta #) como endereço de destino. q Armazena na tabela de tradução do NAT: cada (endereço IP de origem interno, porta #) com o par de tradução (endereço IP do NAT, nova porta #). q Datagramas que chegam: substituir (endereço IP do NAT, nova porta #) nos campos de destino de cada datagrama pelos correspondentes (endereço IP de origem, porta #) armazenados da tabela NAT. NAT: Network Address Translation (5) q Campo número de porta com 16 bits: 60.000 conexões simultâneas com um único endereço de LAN. q NAT é controverso: Roteador: deveria processar só até a layer 3. Violação do argumento fim-a-fim (P2P). A escassez de endereços deveria ser para IPv6. Violação do esquema cálculo do checksum do IP. Algumas aplicações não funcionam com NAT. Prof. Dr. Adriano Mauro Cansian 39

ICMP 79 ICMP Internet Control Message Protocol q Parte da camada IP. q Mecanismo de baixo nível para influenciar o comportamento do TCP e do UDP. Diversas mensagens de controle, tais como: Informar hosts sobre melhor rota ao destino; Informar problemas com uma rota; Finalizar uma sessão devido a problemas na rede; Relatar erros: estação, rede, porta, protocolo inatingíveis; Pedido e resposta de eco e testes. q Usado em ferramentas vitais de administração e monitoramento à ping e traceroute. Prof. Dr. Adriano Mauro Cansian 40

ICMP IP header (20 byte) ICMP message IP datagram 8-bit type 8-bit code 16-bit checksum Carga /conteúdo: depende do tipo e código Formato da Mensagem ICMP 0 7 8 15 16 31 tipo código checksum parâmetros... informação 82 Prof. Dr. Adriano Mauro Cansian 41

ICMP Message Types type Description 0 Echo Reply Echo Reply 3 Destination Unreachable Error 4 Source Quench Error 5 Redirect Error 8 Echo Request Echo Query 9 Router Advertisement Query 10 Router Solicitation Query 11 Time Exceeded Error 12 Parameter Problem Query 13 Timestamp Request Query 14 Timestamp Reply Query 17 Address Mask Request Query 18 Address Mask Reply Reply code Description 0 Network Unreachable 1 Host Unreachable 2 Protocol Unreachable 3 Port Unreachable 4 Fragmentation Needed and DF set 5 Source Route Failed 6 Destination Network Unknown 7 Destination Host Unknown 8 Source Host Isolated 9 Network Administratively Prohibited 10 Destination Host Administratively Prohibited 11 Network Unreachable For TOS 12 Host Unreachable For TOS 13 Communication Administratively Prohibited 14 Host Precedence Violation 15 Precedence Cutoff in Effect Exemplo: ICMP Echo Request and Reply q ICMP echo mensagem para enviar e receber pacotes específicos de echo entre 2 hosts Type(0 or 8) Code(0) identifier Echo data (variable length) checksum sequence number Prof. Dr. Adriano Mauro Cansian 42

Interconexão de redes e roteamento 87 O problema de inter-redes q Internet = INTERNETworking Interconexão de redes. q Comunicação fim-a-fim sobre redes: Em escala arbitrariamente grande. Deve ser possível escalar. Heterogêneas. Diversos protocolos de enlace. Organizadas como federação domínios. Cada instituição é dona de uma parte da rede. 88 Prof. Dr. Adriano Mauro Cansian 43

Elementos de Interconexão em várias camadas: q Repetidores na camada física (layer1). q Switches na camada de acesso ao meio (layer2). q Roteadores na camada de rede (layer3). q Gateways de aplicação ( layer 7 ). 89 Roteamento protocolo de roteamento Meta: determinar melhor caminho (seqüência de roteadores) pela rede, desde a origem ao destino. Abstração de grafo para algoritmos de roteamento: q Nós do grafo são roteadores. q Arestas do grafo são os enlaces físicos. Custos do enlace: retardo, financeiro, risco, ou congestionamento. A 1 2 5 B D 2 3 1 3 C E 1 5 2 F q Caminho melhor : Tipicamente significa caminho de menor custo. Outras definições são possíveis. 90 Prof. Dr. Adriano Mauro Cansian 44

Abstração em grafo Grafo: G = (N,E) N = conjunto de roteadores = { u, v, w, x, y, z } E = conjunto de links ={ (u,v), (u,x), (v,x), (v,w), (x,w), (x,y), (w,y), (w,z), (y,z), (u,w) } A abstração de grafo é útil em outros contextos de rede. Por exemplo: Filesharing P2P (bittorrent): N é o conjunto de peers. E é o conjunto de conexões TCP. Abstração do gráfico: custo c(a,a ) = custo do link (a,a ) Ex: c(w, z) = 5 Exemplo de custo: pode ser sempre o mesmo, relativo à distância, ou então inversamente relacionado à largura de banda ou ao congestionamento. Custo do caminho (x 1, x 2, x 3,, x p ) = c(x 1,x 2 ) + c(x 2,x 3 ) + + c(x p-1,x p ) Questão: Qual é o caminho de menor custo entre u e z? Algoritmo de roteamento: é algoritmo que encontra o caminho de menor custo, ou melhor caminho possível. Prof. Dr. Adriano Mauro Cansian 45

Tipos de algoritmos de roteamento q Duas classificações principais. Quanto ao tipo da informação. Quanto à mudança das rotas. q Veremos em seguida... 94 Classificação de Algoritmos de Roteamento (1) Global: Classificação 1: Informação global ou descentralizada? q Todos roteadores têm informações completas de topologia, distância e custos dos enlaces. q Algoritmos de estado de enlaces (link state - LS). Descentralizada: q Roteador conhece vizinhos diretos, e custos até eles. q Processo iterativo de cálculo, e troca de informações com vizinhos. q Algoritmos de vetor de distâncias (distance vector - DV). 95 Prof. Dr. Adriano Mauro Cansian 46

Classificação de Algoritmos de Roteamento (2) Classificação 2: Estático ou dinâmico? Estático: q Usado quando as rotas mudam lentamente ou raramente. Tipicamente para sistemas de borda (edge routers) ou que possuem um ou poucos links de entrada/saída. Dinâmico: q Usado quando as rotas mudam mais rapidamente. Tipicamente para sistemas de núcleo (core routers), com vários links e várias conexões. Atualização periódica automática. em resposta a mudanças nos custos, ou disponibilidade ou estado (link down ou up) dos enlaces. 96 Algoritmos de roteamento Introdução aos algoritmos mais usados 97 Prof. Dr. Adriano Mauro Cansian 47

Algoritmos de roteamento q Dois algoritmos principais: Link State e Distance Vector. q Link state: Informação Global. Algoritmo de Dijskstra q Distance vector: Informação Descentralizada Equação de Bellman-Ford. 98 Link State 99 Prof. Dr. Adriano Mauro Cansian 48

Roteamento Link-state Usa o Algoritmo de Dijkstra para calcular melhor caminho. q Topologia da rede e custo de todos os enlaces são conhecidos por todos os nós. Implementado via link state broadcast. Todos os nós têm a mesma informação. Todos os nós têm uma visão igual e completa da rede. q Calcula caminhos de menor custo de uma origem para todos os outros nós destinos. Fornece uma tabela de roteamento a partir daquele nó (origem). 100 Exemplo: Rodando o Algoritmo de Dijkstra s para o nó A: Passo 0 1 2 3 4 5 início N A AD ADE ADEB ADEBC ADEBCF D(B),p(B) 2,A 2,A 2,A D(C),p(C) 5,A 4,D 3,E 3,E D(D),p(D) 1,A D(E),p(E) infinito 2,D D(F),p(F) infinito infinito 4,E 4,E 4,E Calculando os caminhos de menor custo de A até todos os destinos possíveis. Lembrando: p(x) à predecessor de x ao longo do caminho de menor custo atual. Cada linha da tabela fornece os valores das variáveis do algoritmo ao final da iteração. A 1 2 5 B 2 D 3 1 3 C E 1 5 2 104 F Prof. Dr. Adriano Mauro Cansian 49

Exemplo: Algoritmo de Dijkstra s Passo 0 1 2 3 4 5 início N A AD ADE ADEB ADEBC ADEBCF D(B),p(B) 2,A 2,A 2,A D(C),p(C) 5,A 4,D 3,E 3,E D(D),p(D) 1,A D(E),p(E) infinito 2,D D(F),p(F) infinito infinito 4,E 4,E 4,E 5 E isso continua A 1 2 B D 2 3 1 3 C E 1 5 2 F (aqui está apenas para o menor custo de A até cada destino) 105 Exemplo: Algoritmo de Dijkstra s Passo 0 1 2 3 4 5 início N A AD ADE ADEB ADEBC ADEBCF D(B),p(B) 2,A 2,A 2,A D(C),p(C) 5,A 4,D 3,E 3,E D(D),p(D) 1,A D(E),p(E) infinito 2,D D(F),p(F) infinito infinito 4,E 4,E 4,E 5 Menor custo de A A 1 2 B D 2 3 1 3 C E 1 5 2 F até C é 3 e passa por E. Depois sabe-se qual o menor custo de A até E e por onde ele passa... etc... 106 Prof. Dr. Adriano Mauro Cansian 50

Resultado da tabela de repasse em A: A 1 2 B D 1 C E 1 2 F Destino: B C D E F Link: (A,B) (A,D) (A,D) (A,D) (A,D) Caminhos de menor custo resultantes, e a tabela de repasse para o nó A. Exercício: obter as tabelas para todos os nós 107 Distance Vector 109 Prof. Dr. Adriano Mauro Cansian 51

Roteamento Distance Vector (1) q Enquanto o LS usa informação global, o DV é iterativo, assíncrono e distribuído. Iterativo: q Continua até que os nós não troquem mais informações. Self-terminating à não há sinal de parada. Assíncrono: q Os nós não precisam trocar informações simultaneamente! Distribuído: q Cada nó se comunica apenas com os seus vizinhos, diretamente conectados. 110 Roteamento Distance Vector (2) q Equação de Bellman-Ford (B-F) define: d x (y) à menor custo do caminho de x até y Então: d x (y) = min v {c(x,v) + d v (y) } Onde min é calculado sobre todos os vizinhos v de x. Prof. Dr. Adriano Mauro Cansian 52

Roteamento Distance Vector (3) Vemos que: d v (z) = 5 d x (z) = 3 d w (z) = 3 Calculando o menor caminho de u até z com a equação B-F diz que: d u (z) = min { c(u,v) + d v (z), c(u,x) + d x (z), c(u,w) + d w (z) } = min { 2 + 5, 1 + 3, 5 + 3 } = 4 O nó que atinge o mínimo é o próximo salto no caminho mais curto da origem até o destino até resulta na tabela de roteamento. O que é o Vetor de Distâncias q D x = [ D x (y): y em N ] q Vetor de distâncias do nó x é um conjunto. q É um conjunto contendo todas as estimativas de custos de x até todos os outros nós y em N. 113 Prof. Dr. Adriano Mauro Cansian 53

O que cada nó mantém: q Cada nó x mantém os seguintes dados de roteamento: 1. O custo c(x,v) até cada vizinho v, diretamente conectado. 2. O vetor de distâncias dele (nó x), contendo a estimativa dos custos de x até todos os destinos y em N. 3. Os vetores de distâncias de seus vizinhos para cada vizinho v de x: D v = [ D v (y): y em N ]. 114 Roteamento Hierárquico Problemas do mundo real: q Roteadores não são todos idênticos. q Na prática redes não são planas. Escala: 50 milhões de destinos. q Não é possível armazenar todos os destinos numa única tabela de rotas. q As mudanças na tabela de rotas poderiam congestionar os enlaces. Autonomia Administrativa q Internet = rede de redes. q Cada administração de rede pode querer controlar o roteamento na sua própria rede. 133 Prof. Dr. Adriano Mauro Cansian 54

Roteamento Hierárquico q Agrega roteadores em regiões: Sistemas autônomos ou Autonomous System (AS). q Roteadores dentro do mesmo AS rodam o mesmo protocolo de roteamento: Protocolo de roteamento Intra-AS. Roteadores em diferentes AS podem rodar protocolos de roteamento diferentes. Roteadores de borda q Fronteira de um AS. q Rodam protocolos de roteamento Intra-AS com os outros roteadores do AS. q Também responsáveis por enviar mensagens para fora do AS. Rodam protocolo de roteamento inter-as com outros roteadores. 134 Roteamento Intra-AS e Inter-AS Organização C a C b d A a b c a B c b Organização B Organização A 135 Prof. Dr. Adriano Mauro Cansian 55

Roteamento Intra-AS e Inter-AS C.b b a C AS C d A A.a a b A.c c B.a a c b B AS B AS A Roteadores de Borda: Realizam roteamento inter-as entre instituições diferentes. Realizam roteamento intra-as com outros roteadores dentro do mesmo AS. 136 Roteamento Intra-AS e Inter-AS a C.b b C d A A.a a b A.c c B.a a B c b Roteamento inter-as e intra-as no roteador A.c Camada de rede Camada de enlace Camada fisica 137 Prof. Dr. Adriano Mauro Cansian 56

Roteamento Intra-AS e Inter-AS a Host h1 C C.b b d A A.a a b A.c Roteamento Intra-AS: dentro do AS A à (interior gateways) Roteamento Inter-AS entre os AS s A e B à (exterior gateways) c B.a a B c b Host h2 Roteamento Intra-AS, dentro do AS B Nós voltaremos a discutir protocolos de roteamento Inter-AS e Intra-AS mais adiante 138 Roteamento Intra-AS Interior Gateway Protocols (IGP) 139 Prof. Dr. Adriano Mauro Cansian 57

Roteamento Intra-AS q Também conhecido como: Interior Gateway Protocols (IGP). ou protocolos de roteamento interno. q Os IGPs mais comuns são: RIP: Routing Information Protocol OSPF: Open Shortest Path First IGRP: Interior Gateway Routing Protocol (proprietário da Cisco) 140 Roteamento Inter-AS Exterior Gateway Protocols (EGP) 151 Prof. Dr. Adriano Mauro Cansian 58

Roteamento Inter-AS 152 Roteamento inter-sa na Internet: BGP q BGP (Border Gateway Protocol) à o padrão de fato q Protocolo Vetor de Caminhos: Semelhante ao protocolo de Vetor de Distâncias (DV). Cada Border Gateway (roteador de fronteira) difunde aos vizinhos (pares) o caminho inteiro (isto é, seqüência de ASs) ao destino. Por exemplo: roteador de fronteira X pode enviar seu caminho ao destino Z: Path (X,Z) = X,Y1,Y2,Y3,,Z 153 Prof. Dr. Adriano Mauro Cansian 59

Roteamento inter-sa na Internet: BGP q Suposição: roteador X envia seu caminho para roteador para W. q W pode ou não selecionar o caminho oferecido por X razões de custo, políticas (não rotear via o AS de um concorrente), evitar looping, dentre ouros motivos. q Se W seleciona caminho até Z anunciado por X, então: Caminho (W,Z) = W, Caminho (X,Z) q Note que X pode controlar o tráfego de chegada através do controle dos seus anúncios de rotas aos seus pares. Por exemplo: se não quero receber tráfego para Z: Não anuncia rotas para Z. 154 Por que há diferenças entre roteamento Intra e Inter-AS? Políticas: q Inter-AS à administração quer controle sobre como tráfego roteado, quem transita através da sua rede. q Intra-AS à administração é única, portanto são desnecessárias decisões políticas. Escalabilidade: q Roteamento hierárquico economiza tamanho de tabela de rotas, reduz tráfego de atualização Desempenho: q Intra-AS: pode focar em desempenho. q Inter-AS: políticas podem ser mais importantes do que desempenho. 155 Prof. Dr. Adriano Mauro Cansian 60

Final da Camada de Rede Vimos neste capítulo: q Serviços da camada de rede. q Roteamento e Roteador. q Endereços IP. q Fragmentação e MTU. q Sub-redes e máscaras. q Princípio de roteamento: seleção de caminhos. q Algoritmos de roteamento. Link state e distance vector. q Roteamento hierárquico. q Sistemas Autônomos. q Protocolos de roteamento da Internet. 156 Prof. Dr. Adriano Mauro Cansian 61