ARP
Address Resolution Protocol
Protokół ARP jest używany do tłumaczenia adresów internetowych na adresy sprzętowe używane przez sieci lokalne. ARP może pracować z tymi rodzajami sieci, które posiadają mechanizm rozgłaszania.
Zasada działania ARP polega na wymianie komunikatów żądanie - odpowiedź. Węzeł szukający adresu sprzętowego związanego z określonym adresem IP rozgłasza pakiet "Żądanie ARP". każdy węzeł dołączony do sieci odbiera taki komunikat i jeśli rozpozna, że szukany jest jego adres IP - zapisuje w pamięci adres sprzętowy i IP nadawcy i wysyła pakiet "Odpowiedź ARP". Jeśli jednak żaden z węzłów nie odpowie na żądanie, komputer szukający adresu wyśle je ponownie po upłynięciu pewnego czasu (standardowo 1 s). Jeśli żadna z trzech kolejnych prób nie powiedzie się - adres jest uznawany za nieosiągalny.
Tablica ARP
Tablica ARP służy do przechowywania odnalezionych przez ARP odwzorowań w celu zwiększenia efektywności działania protokołu. Tablica zapobiega wysyłaniu żądań ARP oddzielnie dla każdego pakietu skierowanego pod określony adres IP. Przed wysłaniem żądania jest ona przeszukiwana i jeśli zostanie znalezione niekompletne odwzorowane (odpowiedź ARP jeszcze nie nadeszła) pakiet jest kolejkowany.Pozycje w tablicy podlegają przeterminowaniu.
Każda pozycja w tablicy ARP posiada następujące pola:
- adres IP,
- adres MAC (sprzętowy),
- czas życia odwzorowania.
Zasada działania ARP
Odwzorowanie adresów i pamięć podręczna
Przedstawiony sposób odwzorowywania adresów ma jednak wady:
- Jest zbyt kosztowny aby go używać za każdym razem gdy jakaś maszyna chce przesłać pakiet do innej: przy rozgłaszaniu każda maszyna w sieci musi taki pakiet przetworzyć,
- W celu zredukowania kosztów komunikacji komputery używające protokołu ARP przechowują w pamięci podręcznej ostatnio uzyskane powiązania adresu IP z adresem fizycznym, w związku z tym nie muszą ciągle korzystać z protokołu ARP,
- Ponadto komputer A wysyłając prośbę o adres fizyczny komputera C od razu dowiązuje informację o swoim adresie fizycznym. Ponieważ prośba ta dociera do wszystkich komputerów w sieci, mogą one umieścić w swoich pamięciach podręcznych informację o adresie fizycznym komputera A,
- * Jeśli w komputerze zostanie zmieniony adres fizyczny (np. w wyniku zmiany karty sieciowej), to może on bez zapytania o jego adres fizyczny rozgłosić go do innych komputerów, tak aby uaktualniły informacje w swoich pamięciach podręcznych.
