Prévia do material em texto
Redes de Computadores e Internet Janeiro/2007 Prof. Almir Carlos da Silva Arquitetura de Redes Redes de Computadores e Internet Janeiro/2007 Modelo de Referência OSI Redes de Computadores e Internet Janeiro/2007 Modelo de Referência ISO/OSI ❑ O que é? ❖ ISO • International Organization for Standarization • Entidade internacional de padronização ❖ OSI • Open Systems Interconnection ❖ Modelo de Referência OSI • Modelo de arquitetura de redes de computadores, definida pela ISO, que deve ser utilizada como referência no projeto de protocolos de redes pelos fabricantes • Possui sete níveis de protocolos ❖ Objetivo • Permitir o intercâmbio de informações entre computadores de fabricante distintos Redes de Computadores e Internet Janeiro/2007 Modelo de Referência ISO/OSI Sessão Apresentação Aplicação Transporte Rede Enlace Físico meio físico OSI Realiza a Interface com o usuário Trata da semântica, compressão/descompressão, criptografia e tradução dos dados Gerencia o diálogo entre as portas lógicas e mantém separação dos dados de diferentes aplicações Prove a comunicação confiável (ou não) e executa checagem de erros antes da retransmissão Define e gerencia o endereçamento lógico da rede Acomoda os pacotes em quadros (encapsulamento). Detecta erros, porém, não os corrige Responsável pela movimentação dos bits entre as pontas, especificações elétricas e de pinagem PDU Segmento Pacote Quadro Bits Redes de Computadores e Internet Janeiro/2007 Modelo de Referência ISO/OSI ❑ Nível Físico ❖ Define as características mecânicas, elétricas, funcionais e procedimentos pra ativar, manter e desativar conexões físicas ❖ Objetivo • Permitir a transmissão de bits pelas entidades de nível de enlace • Dedica-se a transmissão de bits ❖ Características • Define • Como representar os valores 0 e 1 (bits) • Half-duplex ou Full-duplex • Estabelecimento e finalização de sessão Redes de Computadores e Internet Janeiro/2007 Modelo de Referência ISO/OSI ❑ Nível de Enlace ❖ Objetivo • Detectar erros que ocorram no nível físico • Controle de fluxo • Não permitir que uma entidade emissora transmita mais dados que a entidade receptora seja capaz de processar ❖ Converte um canal de transmissão não confiável em um canal de transmissão confiável ❖ Os dados a serem transmitidos são colocados em quadros que contém alguma forma de redundância para detecção de erros Redes de Computadores e Internet Janeiro/2007 Modelo de Referência ISO/OSI ❑ Nível de Rede ❖ Objetivo • Fornecer ao nível superior (nível de transporte) uma forma de transmitir dados entre duas máquinas quaisquer ❖ Características • Trata dos problemas de roteamento e chaveamento de pacotes ❖ Tipo de serviço • Orientado a conexão • Datagrama Redes de Computadores e Internet Janeiro/2007 Modelo de Referência ISO/OSI ❑ Nível de Transporte ❖ Objetivo • Permite definir um meio confiável de transmissão fim-a-fim (aplicação – aplicação) ❖ O nível de rede não garante necessariamente que um pacote chegue ao seu destino: • Um pacote pode não chegar ao seu destino • Pacotes podem chegar fora de ordem ❖ Funções importantes • Multiplexação • Controle de Fluxo Redes de Computadores e Internet Janeiro/2007 Modelo de Referência ISO/OSI ❑ Nível de Sessão ❖ Objetivo • Fornecer mecanismos que permitam estruturar os circuitos oferecidos pelo nível de transporte ❖ Funções • Gerenciamento de token • Nos casos na qual a troca de informações seja half-duplex • Controle de diálogo • Ponto de sincronização – no caso de uma falha de comunicação os parceiros voltam a um ponto anterior da comunicação • Gerenciamento de atividades • Controle de prioridades Redes de Computadores e Internet Janeiro/2007 Modelo de Referência ISO/OSI ❑ Nível de Apresentação ❖ Objetivo • Realizar transformações necessárias nos dados transmitidos para se adequar ao sistema local • Compressão / Descompressão dos dados • Criptografia / Tradução dos dados • Exemplo • Comunicação entre um Brasileiro e um Japonês com auxílio de um tradutor em inglês • A camada de sessão funciona como o tradutor inglês Redes de Computadores e Internet Janeiro/2007 Modelo de Referência ISO/OSI ❑ Nível de Aplicação ❖ Objetivo • Fornecer aos processos de uma aplicação os meios para que estes utilizem o meio de comunicação Redes de Computadores e Internet Janeiro/2007 Arquitetura TCP/IP Redes de Computadores e Internet Janeiro/2007 Arquitetura TCP/IP Sessão Apresentação Aplicação Transporte Rede Enlace Físico meio físico OSI Aplicação Transporte Rede Intra-rede meio físico TCP/IP Redes de Computadores e Internet Janeiro/2007 Modelo de Referência ISO/OSI ❑ Nível de Intra-Rede ❖ Objetivo • Transferência de dados entre equipamentos de uma mesma rede ❖ Funções importantes • Tradução de bits em sinais de transmissão • Especificação dos meios de transmissão • Endereçamento • Chaveamento ❖ Protocolos • Ethernet, Fast-Ethernet, Gigabit-Ethernet • PPP, SLIP, Frame Relay... Redes de Computadores e Internet Janeiro/2007 Modelo de Referência ISO/OSI ❑ Nível de Rede ❖ Objetivo • Transferência de dados entre equipamentos quaisquer (não necessariamente pertencente a mesma rede) ❖ Funções importantes • Endereçamento • Roteamento ❖ Protocolos • IP • IPX Redes de Computadores e Internet Janeiro/2007 Modelo de Referência ISO/OSI ❑ Nível de Transporte ❖ Objetivo • Transferência de dados entre aplicações (processos) residentes em máquinas distintas ❖ Funções importantes • Controle de fluxo • Endereçamento de aplicações (porta) ❖ Protocolos • TCP – orientado a conexão • UDP - datagrama Redes de Computadores e Internet Janeiro/2007 Modelo de Referência ISO/OSI ❑ Nível de Aplicação ❖ Objetivo • Permitir que aplicações troquem informações seguindo uma regra especifica de cada aplicação ❖ Protocolos • DNS • FTP • HTTP • Telnet • SMTP • POP • IMAP Redes de Computadores e Internet Janeiro/2007 DNS UDP IP Camada de Aplicação Camada intra-rede Camada de redes Camada de transporte TCP meio físico Aplicação HTTP FTP Telnet SMTP RPC NFS NIS Netbios SMB ICMP IGMP ARP RARP Gigabit Ethernet Fast EthernetEthernet PPP Frame Redes de Computadores e Internet Janeiro/2007 Arquitetura TCP/IP Meio Físico (rede local) TCP UDP IP ICMP IGMP Ethernet ARP RARP Web Server HTTP TCP UDP IP ICMP IGMP Ethernet ARP RARP Browser HTTP Redes de Computadores e Internet Janeiro/2007 Arquitetura TCP/IP UDP TCP IP ICMP IGMP ARP RARP Web Server HTTP Telnet Server Telnet Processos Kernel Ethernet Device Driver Placa de Rede Meio físico Redes de Computadores e Internet Janeiro/2007 Protocolo ICMP Redes de Computadores e Internet Janeiro/2007 Introdução ao Protocolo ICMP ❑ O que é o protocolo ICMP? ❖ ICMP = “Internet Control Message Protocol” ❖ Protocolo auxiliar para a camada de rede ❑ Objetivo ❖ Permitir o transporte de mensagens de controle e mensagens de teste entre equipamentos ❑ Características ❖ As mensagens ICMP são transportadas dentro de um pacote IP Redes de Computadores e Internet Janeiro/2007 DNS UDP IP Camada de Aplicação Camada intra-rede Camada de redes Camada de transporte TCP meio físico Aplicação HTTP FTP Telnet SMTP RPC NFS NIS Netbios SMB ICMP IGMP ARP RARP Gigabit Ethernet Fast EthernetEthernet PPP Frame Redes de Computadores e Internet Janeiro/2007 Cabeçalho IP Introdução ao Protocolo ICMP ❑ Pacote ICMP ❖ Transportado pelo “Pacote IP” Cabeçalho ICMP Conteúdo ICMPICMP DadosIP Redes de Computadores e Internet Janeiro/2007 Introdução ao Protocolo ICMP ❑ Pacote ICMP ❖ Cabeçalho: fixo ❖ Carga: depende do tipo da mensagem ICMP Type (8 bits) code (8 bits) Checksum do pacote (8 bits) Conteúdo Cabe- çalho Carga Redes deComputadores e Internet Janeiro/2007 Introdução ao Protocolo ICMP ❑ Pacote ICMP ❖ Campos • Tipo: • existem 15 tipos diferentes de mensagens • Código: • Alguns tipos de mensagens ICMP utilizam ainda um código para identificar uma condição mais específica • Checksum: ▪ código de verificação de consistência • engloba toda a mensagem • utiliza o mesmo algoritmo do IP • Conteúdo • depende do tipo e código da mensagem Redes de Computadores e Internet Janeiro/2007 Introdução ao Protocolo ICMP ❑ Tipos de pacotes ICMP ❖ 0 echo reply (utilizado pelo ping) ❖ 3 destination unreachable ❖ 4 source quench ❖ 5 redirect ❖ 8 echo request ❖ 9 router advertisement ❖ 10 router solicitation ❖ 11 TTL exceeded ❖ 12 parameter problem ❖ 13 timestamp request ❖ 14 timestamp reply ❖ 15 information request (obsoleta) ❖ 16 information reply (obsoleta) ❖ 17 address mask request ❖ 18 address mask reply Redes de Computadores e Internet Janeiro/2007 Introdução ao Protocolo ICMP ❑ ICMP Tipo 3 (destination unreachable) - Codes: ❖ 0 Network unreachable ❖ 1 Host unreachable ❖ 2 Protocol unreachable ❖ 4 Fragmentation need but don’t fragment bit set ❖ 5 source route failed ❖ 6 destination network unknow ❖ 7 destination host unknow ❖ 9 destination network administratively prohibited ❖ 10 destination host administratively prohibited ❖ 11 network unreachable for TOS ❖ 12 host unreachable for TOS ❖ 13 communication administratively prohibited by filtering ❖ 14 host precedence violation ❖ 15 precedence cutoff effect Redes de Computadores e Internet Janeiro/2007 Introdução ao Protocolo ICMP # ping terra PING terra (10.0.0.1): 56 data bytes 64 bytes from 10.0.0.1: icmp_seq=0 ttl=255 time=1,2 ms 64 bytes from 10.0.0.1: icmp_seq=1 ttl=255 time=1,8 ms 64 bytes from 10.0.0.1: icmp_seq=3 ttl=255 time=2.2 ms 64 bytes from 10.0.0.1: icmp_seq=4 ttl=255 time=1,0 ms 64 bytes from 10.0.0.1: icmp_seq=5 ttl=255 time=1,0 ms ^C Redes de Computadores e Internet Janeiro/2007 Introdução ao Protocolo ICMP # ping terra ICMP echo request (ID 388, seq=1) ICMP echo reply (ID 388, seq=1) ICMP echo request (ID 388, seq=2) ICMP echo reply (ID 388, seq=2) Redes de Computadores e Internet Janeiro/2007 Exemplo 1/2 Ping (Echo Request) Redes de Computadores e Internet Janeiro/2007 Exemplo 2/2 Ping (Echo Reply) Redes de Computadores e Internet Janeiro/2007 Protocolo UDP Redes de Computadores e Internet Janeiro/2007 Introdução ao Protocolo UDP ❑ O que é o protocolo UDP? ❖ ICMP = “Internet Control Message Protocol” ❖ UDP = “User Datragram Protocol” ❖ Protocolo da camada de transporte ❑ Objetivo ❖ Protocolo da camada de transporte para permitir comunicação entre aplicações ❑ Características ❖ Não confiável: o pacote UDP é enviado ao destinatário, porém não existe garantia, nem confirmação de entrega ❖ Não orientado a conexão: não é necessário o estabelecimento de conexão antes de enviar um pacote UDP ❖ Possibilidade de entrega de pacotes fora de ordem ❑ Porta UDP ❖ Permite a um processo de aplicação se associar a uma porta Redes de Computadores e Internet Janeiro/2007 DNS UDP IP Camada de Aplicação Camada intra-rede Camada de redes Camada de transporte TCP meio físico Aplicação HTTP FTP Telnet SMTP RPC NFS NIS Netbios SMB ICMP IGMP ARP RARP Gigabit Ethernet Fast EthernetEthernet PPP Frame Redes de Computadores e Internet Janeiro/2007 Introdução ao Protocolo UDP UDP TCP IP ICMP IGMP Ethernet ARP RARP Cliente DNS DNS UDP TCP IP ICMP IGMP Ethernet ARP RARP Servidor DNS DNS UDP 1076 UDP 53 Processos Unix Kernel Driver Meio Físico NIC Redes de Computadores e Internet Janeiro/2007 Pacote UDP Comprimento do pacote UDP (16 bits) Conteúdo (32 bits) Checksum do pacote UDP (16 bits) Porta UDP na origem (16 bits) Porta UDP no destino (16 bits) Cabe- çalho Carga Redes de Computadores e Internet Janeiro/2007 Pacote UDP ❑ Campos do pacote UDP ❖ Porta UDP na origem • Valor de 1 a 65535 ❖ Porta UDP no destino • Valor de 1 a 65535 ❖ Comprimento do pacote UDP • Comprimento total do pacote UDP em bytes ❖ Checksum do pacote UDP Redes de Computadores e Internet Janeiro/2007 Pacote UDP ❑ Empacotamento do pacote UDP em um pacote IP Cabeçalho IP Cabeçalho UDP Conteúdo UDPUDP DadosIP Redes de Computadores e Internet Janeiro/2007 Pacote UDP ❑ Captura de pacote UDP Redes de Computadores e Internet Janeiro/2007 Protocolo TCP Redes de Computadores e Internet Janeiro/2007 Introdução ao Protocolo TCP ❑ O que é o protocolo TCP? ❖ TCP = “Transport Control Protocol” ❖ Protocolo da camada de transporte ❑ Objetivo ❖ Protocolo da camada de transporte para permitir comunicação entre aplicações ❑ Características ❖ Orientado a conexão: é necessário estabelecimento de conexão entre emissor e receptor antes de enviar um pacote TCP ❖ Confiável: se um pacote não for entregue ele é retransmitido ❖ Entrega em ordem ❖ Controle de fluxo ❑ Porta TCP ❖ Permite a um processo de aplicação se associar a uma porta Redes de Computadores e Internet Janeiro/2007 DNS UDP IP Camada de Aplicação Camada intra-rede Camada de redes Camada de transporte TCP meio físico Aplicação HTTP FTP Telnet SMTP RPC NFS NIS Netbios SMB ICMP IGMP ARP RARP Gigabit Ethernet Fast EthernetEthernet PPP Frame Redes de Computadores e Internet Janeiro/2007 Introdução ao Protocolo TCP UDP TCP IP ICMP IGMP Ethernet ARP RARP Browser HTTP UDP TCP IP ICMP IGMP Ethernet ARP RARP Servidor WEB HTTP TCP 1054 TCP 80 Processos Unix Kernel Driver Meio Físico NIC Redes de Computadores e Internet Janeiro/2007 Pacote TCP C a b e ç a lh o Carga Redes de Computadores e Internet Janeiro/2007 Pacote TCP ❑ Porta TCP na origem ❖ Valor de 1 a 65535 ❑ Porta TCP de destino ❖ Valor de 1 a 65535 ❑ Número de Seqüência ❖ Número de seqüência do pacote sendo transmitido ❑ Número de acknowledgment ❖ Número de seqüência do último pacote recebido acrescido de 1 ❑ Comprimento do cabeçalho ❖ Comprimento do cabeçalho ( em palavras de 32 bits) Redes de Computadores e Internet Janeiro/2007 Pacote TCP ❑ Flags: ❖ SYN Synchronize (pedido de conexão) ❖ FIN Finalize (pedido de término de conexão) ❖ ACK Acknowledgment (confirmação de recebimento) ❖ URG Urgent ❖ PSH Push ❖ RST Reset ❑ Tamanho da janela ❖ Utilizado no controle de fluxo ❑ Checksum do pacote TCP ❑ Ponteiro de urgência ❑ Opções (opcional) Redes de Computadores e Internet Janeiro/2007 Pacote TCP ❑ Empacotamento do pacote TCP em um pacote IP Cabeçalho IP Cabeçalho TCP Conteúdo TCPTCP DadosIP Redes de Computadores e Internet Janeiro/2007 Pacote TCP Redes de Computadores e Internet Janeiro/2007 Pacote TCP Redes de Computadores e Internet Janeiro/2007 Pacote TCP ❑ Conexão Realizada Redes de Computadores e Internet Janeiro/2007 Pacote TCP ❑ Socket ❖ Plug da Comunicação ❖ Identifica um extremo da comunicação ❖ Representado por • Endereço IP • Porta ❑ Par de socket ❖ Identifica um canal de comunicação ❖ Representado por • Endereço IP • Porta • Endereço IP • Porta IP Porta IP Porta Redes de Computadores e Internet Janeiro/2007 Pacote TCP ❑ Número de seqüência ❖ Em uma conexão, cada entidade define um número inicial chamado número de seqüência, que é incrementado a cada segmento (pacote) trocado. ❖ Portanto, existe dois números de seqüência em uma conexão • Um número de seqüência do servidor • Um número de seqüência do clienteRedes de Computadores e Internet Janeiro/2007 Controle de conexão TCP ❑ Três Fases ❖ Estabelecimento da Conexão ❖ Transmissão de Dados ❖ Encerramento da Conexão Redes de Computadores e Internet Janeiro/2007 Estados – Estabelecimento de conexão Cliente Closed Servidor realiza um “open passivo” Servidor Closed Listen Redes de Computadores e Internet Janeiro/2007 Estados – Estabelecimento de conexão Cliente Servidor realiza um “open passivo” Servidor LISTEN SYN_SENT Cliente realiza um “open ativo” SYN_RCVD SYN 4300038 SYN 5599901 ACK 4300039 Redes de Computadores e Internet Janeiro/2007 Estados – Estabelecimento de conexão Cliente Servidor realiza um “open passivo” Servidor LISTEN SYN_SENT Cliente realiza um “open ativo” SYN_RCVD SYN 4300038 SYN 5599901 ACK 4300039 ACK 4300039 ESTABLISHED Redes de Computadores e Internet Janeiro/2007 Estados – Estabelecimento de conexão Cliente Servidor realiza um “open passivo” Servidor LISTEN SYN_SENT Cliente realiza um “open ativo” SYN_RCVD SYN 4300038 SYN 5599901 ACK 4300039 ACK 5599902 ESTABLISHED ESTABLISHED Three Way Handshake Redes de Computadores e Internet Janeiro/2007 Estados – Término de conexão Cliente Servidor FYN_WAIT Cliente realiza um “close ativo” FIN 4300050 ESTABLISHED ESTABLISHED Redes de Computadores e Internet Janeiro/2007 Estados – Término de conexão Cliente Servidor FYN_WAIT Cliente realiza um “close ativo” FIN 4300050 ESTABLISHED ESTABLISHED CLOSE_WAIT ACK 5599905 Redes de Computadores e Internet Janeiro/2007 Estados – Término de conexão Cliente Servidor FYN_WAIT Cliente realiza um “close ativo” FIN 4300050 ESTABLISHED ESTABLISHED CLOSE_WAIT ACK 5599905 LAST_ACK CLOSE FYN_WAIT2 TIME_WAIT FIN 4300051 ACK 4300051 Redes de Computadores e Internet Janeiro/2007 Serviços Internet Redes de Computadores e Internet Janeiro/2007 Serviços Internet ❑ O que são “serviços Internet”? ❖ Conjunto de serviços remotos oferecidos por um computador ❖ Para cada tipo de serviço geralmente existe um processo (daemon) encarregado de disponibilizar tal serviço Sistema Operacional Processo Cliente Processo Servidor (daemon) Sistema Operacional Redes de Computadores e Internet Janeiro/2007 Serviços Internet UDP TCP IP ICMP IGMP ARP RARP Web Server HTTP Telnet Server Telnet Processos Kernel Ethernet Device Driver Placa de Rede Meio físico Redes de Computadores e Internet Janeiro/2007 Serviços Internet ❑ Exemplo de Serviços ❖ DNS Tradução nome-ip ❖ telnet Conexão remota ❖ rlogin Conexão remota entre sistemas unix ❖ FTP Transferência de arquivos ❖ HTTP Serviços WEB ❖ SMTP Troca de mensagens de correio eletrônico ❖ POP3 Leitura de mensagens de correio eletrônico ❖ NFS Compartilhamento de arquivos (UNIX) ❖ SMB Compartilhamento de arquivos (Windows) ❖ Netbios Serviços Windows Redes de Computadores e Internet Janeiro/2007 Serviços Internet ❑ Exemplo de Serviços: telnet ❖ IETF define a porta TCP 23 para o serviço telnet ❖ (a) Servidor telnet (telnetd) executa um “open passivo” na porta TCP 23 (aguarda conexões na porta 23) Sistema Operacional Telnetd (daemon) Sistema Operacional TCP 23 Host A Host B Redes de Computadores e Internet Janeiro/2007 Serviços Internet ❑ Exemplo de Serviços: telnet (cont) ❖ (b) Cliente telnet executa um “open ativo” utilizando uma porta TCP livre qualquer (porta TCP 1940) para se conectar a porta 23 do Host B. Assim fica estabelecido um canal de comunicação bi-direcional. Sistema Operacional Sistema Operacional TCP 23 Host A Host B Cliente telnet TCP 1940 Telnetd daemon Redes de Computadores e Internet Janeiro/2007 Serviços Internet ❑ Exemplo de Serviços: Servidor WEB ❖ IETF define a porta TCP 80 para o serviço HTTP ❖ (a) Servidor WEB executa um “open passivo” na porta TCP 80 (aguardando conexões na porta TCP 80) Sistema Operacional Sistema Operacional TCP 80 Host A Host B Servidor WEB daemon Redes de Computadores e Internet Janeiro/2007 Serviços Internet ❑ Exemplo de Serviços: Servidor WEB (cont) ❖ (b) Cliente telnet executa um “open ativo” utilizando uma porta TCP livre (porta TCP 1940) para se conectar à porta 80 do host B. Assim fica estabelecido um canal de comunicação bi-direcional. Sistema Operacional Sistema Operacional TCP 80 Host A Host B Browser Cliente TCP 1940 Servidor WEB (daemon) Redes de Computadores e Internet Janeiro/2007 Portas Redes de Computadores e Internet Janeiro/2007 Portas ❑ Porta TCP e UDP ❖ Processos clientes e processos servidores podem se comunicar através de protocolos da camada de transporte (TCP e UDP) • Protocolos da camada de transporte permitem comunicação processo- processo localizados em máquinas diferentes ❖ Para isso, tanto processo cliente quanto processo servidor precisam estar associado a determinadas portas (TCP e UDP) ❖ Os serviços Internet padronizados possume portar reservadas especificamente para esta finalidade Redes de Computadores e Internet Janeiro/2007 Portas ❑ Exemplo de portas reservadas ❖ DNS UDP 53, TCP 53 ❖ telnet TCP 23 ❖ rlogin TCP 513 ❖ FTP TCP 20, TCP 21 ❖ HTTP TCP 80 ❖ SMTP TCP 25 ❖ POP3 TCP 110 ❖ NFS UDP 2049, TCP 2049 ❖ NetBios UDP 137, TCP 137 UDP 138, TCP 138 UDP 139, TCP 139 http://www.iana.org/assignments/port-numbers Redes de Computadores e Internet Janeiro/2007 Portas http://www.iana.org/assignments/port-numbers The range for assigned ports managed by the IANA is 0-1023. Port Assignments: Keyword Decimal Description References ------- ------- ----------- ---------- 0/tcp Reserved 0/udp Reserved # Jon Postel postel@isi.edu tcpmux 1/tcp TCP Port Service Multiplexer tcpmux 1/udp TCP Port Service Multiplexer mailto:postel@isi.edu Redes de Computadores e Internet Janeiro/2007 Coleta de Dados FTP Redes de Computadores e Internet Janeiro/2007 Coleta de Dados SSH Redes de Computadores e Internet Janeiro/2007 Protocolo ARP e RARP Redes de Computadores e Internet Janeiro/2007 Protocolo ARP ❑ Em uma rede local, permite a descoberta de endereço físico (endereço ethernet) de um outro equipamento da mesma rede local a partir de seu endereço IP. ❑ Na arquitetura TCP/IP a identificação da máquina parceira da comunicação é realizada através do endereço IP. Em uma rede local, o pacote IP é transportado em um pacote ethernet que utiliza um outro tipo de endereçamento (endereçamento ethernet) Endereço IP Endereço Físico ARP RARP Redes de Computadores e Internet Janeiro/2007 Protocolo ARP ❑ Funcionamento ❖ Quando a camada Ethernet recebe um pacote com um endereço IP para ser transmitido, é necessário traduzir este endereço IP para endereço físico. ❖ Para descobrir o endereço físico associado a um endereço IP é enviado um pacote de broadcast ARP ❖ Todos os equipamentos que possuirem a informação devem enviar a resposta ❖ Assim que tiver uma resposta (uma tradução) é possível realizar o envio do pacote ethernet Redes de Computadores e Internet Janeiro/2007 Protocolo ARP ❑ Cache ❖ Para evitar que para cada pacote IP transmitido seja necessário descobrir o endereço Ethernet é mantido um cache das últimas traduções ❖ Cada entrada nesta tabela possui um tempo de vida (varia entre os sistemas) Redes de Computadores e Internet Janeiro/2007 Protocolo RARP ❑ Permite a descoberta de endereço IP de um outro equipamento da mesma rede local a partir de seu endereço ethernet ❑ Utilizado por estações diskless no momento do boot Endereço IP Endereço Físico ARP RARP Redes de Computadores e Internet Janeiro/2007 Comando ARP ❑ Verificação da tabela ARP em sistema UNIX /sbin/arp -a angra.site.com.br (10.0.161.50) at 00:60:67:30:D3:0D [ether] on eth0 parati.site.com.br (10.0.161.72) at 00:C2:40:AD:38:98 [ether] on eth0 Redesde Computadores e Internet Janeiro/2007 Comunicação (1) A camada Ethernet da máquina “A” recebe um pacote IP com destino o endereço IP 10.0.0.4 para ser transmitido. Este pacote IP será colocado em um pacote Ethernet para ser transmitido na rede local. (2) Porém “A” não conhece o endereço Ethernet da máquina destino !!! A B C D IP: 10.0.0.1 00:C0:80:23:45:11 IP: 10.0.0.2 00:C0:80:23:45:22 IP: 10.0.0.3 00:C0:80:23:45:33 IP: 10.0.0.4 00:C0:80:23:45:44 (1) Redes de Computadores e Internet Janeiro/2007 Comunicação A B C D IP: 10.0.0.1 00:C0:80:23:45:11 IP: 10.0.0.2 00:C0:80:23:45:22 IP: 10.0.0.3 00:C0:80:23:45:33 IP: 10.0.0.4 00:C0:80:23:45:44 (2) (2) O computador “A” precisa descobrir o endereço Ethernet da interface que esta configurada com o endereço IP 10.0.0.4. Para isto, envia um pacote Ethernet para “broadcast” contendo a seguinte mensagem “Arp request”: Quem possuir o endereço ethernet associado ao endereço IP 10.0.0.4 enviar a resposta para “00:C0:80:23:45:11” Redes de Computadores e Internet Janeiro/2007 Comunicação A B C D IP: 10.0.0.1 00:C0:80:23:45:11 IP: 10.0.0.2 00:C0:80:23:45:22 IP: 10.0.0.3 00:C0:80:23:45:33 IP: 10.0.0.4 00:C0:80:23:45:44 (3) Como o pacote Ethernet enviado por “A” (que contém o pacote ARP) possui como destinatário o endereço “broadcast” ele irá para todas as máquinas da rede local. (3) (3) (3) Redes de Computadores e Internet Janeiro/2007 Comunicação A B C D IP: 10.0.0.1 00:C0:80:23:45:11 IP: 10.0.0.2 00:C0:80:23:45:22 IP: 10.0.0.3 00:C0:80:23:45:33 IP: 10.0.0.4 00:C0:80:23:45:44 (4) O computador “D”, ao receber este pacote, percebe que alguém esta requisitando o endereço Ethernet associado a interface que esta configurada com o endereço IP “10.0.0.4”. O computador “D” envia um pacote Ethernet para 00:C0:80:23:45:11 contendo o seguinte pacote “ARP reply”: O endereço Ethernet associado ao endereço IP 10.0.0.4 é 00:C0:80:23:45:55 (4) Redes de Computadores e Internet Janeiro/2007 Comunicação A B C D IP: 10.0.0.1 00:C0:80:23:45:11 IP: 10.0.0.2 00:C0:80:23:45:22 IP: 10.0.0.3 00:C0:80:23:45:33 IP: 10.0.0.4 00:C0:80:23:45:44 (5) O computador “A” recebe o pacote “ARP reply” e descobre que o endereço Ethernet associado ao endereço IP 10.0.0.4 é “00:C0:80:23:45:44”. (5) Redes de Computadores e Internet Janeiro/2007 Comunicação A B C D IP: 10.0.0.1 00:C0:80:23:45:11 IP: 10.0.0.2 00:C0:80:23:45:22 IP: 10.0.0.3 00:C0:80:23:45:33 IP: 10.0.0.4 00:C0:80:23:45:44 (6) O computador “A” pode agora enviar o pacote IP para o seu destino IP “10.0.0.4” O computador “A” envia um pacote Ethernet com o endereço Ethernet destino “00:C0:80:23:45:44” contendo o pacote IP (6) Redes de Computadores e Internet Janeiro/2007 Comunicação A B C D IP: 10.0.0.1 00:C0:80:23:45:11 IP: 10.0.0.2 00:C0:80:23:45:22 IP: 10.0.0.3 00:C0:80:23:45:33 IP: 10.0.0.4 00:C0:80:23:45:44 (7) O computador “D” recebe o pacote Ethernet enviado pora “A”. Após recebimento do pacote, é retirado o conteúdo transportado: um pacote IP. (7) Redes de Computadores e Internet Janeiro/2007 Exemplo ARP ❑ Envio do pacote Broadcast Redes de Computadores e Internet Janeiro/2007 Exemplo ARP ❑ Resposta da solicitação Redes de Computadores e Internet Janeiro/2007 Exercícios