Cursos / Redes de Computadores / Redes de Computadores I / Aula

arrow_back Aula 02 - Protocolo ARP: Mapeando endereços de Rede para endereços de Enlace

Cache ARP

Embora o modelo descrito na seção anterior resolva o problema da resolução de endereços, ele apresenta dois efeitos colaterais negativos. O primeiro ocorre pelo fato de enviar mensagens pela rede. Pois isso faz com que haja um tempo (atraso) até que a resposta do ARP chegue, causando um atraso no envio do pacote que se deseja transmitir. O segundo efeito negativo se deve ao fato das mensagens serem transmitidas a todas as máquinas na rede. Isso aumenta o volume de tráfego na rede podendo levar a uma redução no seu desempenho. O ideal é que a maior parte da capacidade de transmissão de uma rede seja destinada aos dados das aplicações dos usuários e não aos dados de controle do protocolo. Quanto mais informações para outras finalidades a rede transmitir, como é o caso do ARP, menos banda de rede sobra para os usuários.

Para minimizar os dois problemas citados, o ARP utiliza uma tabela (chamada de cache ARP) onde ele guarda as informações que já descobriu. As duas principais colunas dessa tabela são “endereço IP” e “endereço MAC”. Desse modo, cada linha dessa tabela contém um endereço IP e o seu endereço MAC (tipicamente um endereço Ethernet ou 802.11).

Usando a tabela, o funcionamento do ARP fica da seguinte maneira: quando uma máquina precisa enviar um pacote para um determinado endereço IP, ela primeiro verifica se esse endereço IP já se encontra na tabela ARP. Se ele existir lá, basta obter seu endereço Ethernet a partir da tabela. Nesse caso, nenhuma mensagem é enviada. Caso o endereço IP não exista na tabela, aí sim é enviada a mensagem ARP (ARP request) pela rede. Quando a resposta do ARP chegar (ARP Reply), além de ser utilizado para o envio do pacote IP, é inserida uma entrada na tabela cache associando o IP e o Ethernet. A Figura 7 mostra um fluxograma que descreve o funcionamento do ARP.

Fluxograma do ARP usando a tabela cache

O fluxograma mostra que pode existir uma situação em que enviamos uma requisição ARP e não recebemos resposta. Isso é normal, e acontecerá sempre que tentarmos acessar um endereço IP para o qual não existe nenhuma máquina na nossa rede. Isso acontecerá, por exemplo, quando a máquina que você tenta acessar está desligada. Nesses casos, embora não tenha sido mostrado no fluxograma, também será inserida uma entrada na tabela cache para o endereço IP, mas não haverá um endereço Ethernet associado. Essa entrada servirá apenas para vermos que já tentamos nos comunicar com aquele IP e não conseguimos resposta. Portanto, sempre que alguém precisar se comunicar com esse IP, uma nova requisição ARP será enviada pela rede.


Versão 5.3 - Todos os Direitos reservados