Технические основы IP-сетей. Структура сетевого протокола TCP/IP. Уровень канала данных. Прикладной уровень, страница 6

Каждый хост имеет кэш ARP, где содержатся таблицы отображения адресов IP в физические адреса. В таблицу заносятся адреса, известные хосту на данный момент. Перед посылкой IP-дейтаграммы хосту B LAN, хост A проверяет, не содержится ли IP-адрес узла B в кэш-памяти ARP. Если он содержится в кэш-памяти, далее отыскивается соответствующий физический адрес, и дейтаграмма отправляется на данный физический адрес. 

Иногда IP-адрес хоста B невозможно найти. Это может объясняться тем, что хост В только входит в сеть, или хост A только что включили в сеть, и кэш пока пуст. В таких случаях, для определения физического адреса хоста B хост A автоматически запустит ARP и выполнит следующие шаги:

n  ARP транслирует на все хосты LAN пакет запроса ARP с IP-адресом хоста B.

n  Процессы ARP, запущенные на всех хостах LAN, получают данный пакет запроса ARP.

n  Увидев в передаваемом пакете запроса ARP собственный IP-адрес, хост В высылает хосту А ARP-ответ, записав в него свой физический адрес.

n  После получения ARP-ответа от хоста B хост A запишет в кэш ARP отображение IP-адреса в физический адрес хоста B.

После того, как узел А переслал дейтаграмму узлу B, возможно, узел B, в свою очередь, через короткий промежуток времени начнет отправлять дейтаграмму узлу А. В этом случае узел B также пошлёт запрос ARP узлу A. Чтобы снизить сетевой трафик, при посылке пакета запроса ARP, узел A также записывает в данный пакет ARP отображение своего IP-адреса в физический. После получения пакета запроса ARP узла A, узел B записывает отображение адреса узла A в собственный ARP-кэш, что упрощает последующую пересылку дейтаграммы от узла B к узлу A.

Для перевода адресов иногда используется протокол определения сетевого адреса по местоположению узла – RARP, Reverse Address Resolution Protocol. RARP позволяет получить информацию об IP-адресе хоста, если известен только его физический адрес. В данном случае хост чаще всего является бездисковой рабочей станцией. Загрузка операционной системы и программного обеспечения TCP/IP на бездисковой рабочей станции осуществляется с других хостов локальной сети в нисходящем направлении.     В ПЗУ рабочей станции требуется запуск кода передачи файлов, но программное обеспечение не содержит IP-адреса. Для получения IP-адреса в ПЗУ требуется запустить протокол RARP. 

Последовательность действий, выполняемых RARP, имеет следующий вид: 

Для запуска RARP, по крайней мере, один из хостов локальной сети должен быть настроен как сервер RARP. Сначала бездисковая рабочая станция посылает пакет запроса RARP в том же формате, что и пакет запроса ARP. В пакете запроса RAPP станция также указывает собственный физический адрес.

Сервер RARP заранее готовит таблицу отображения физического адреса бездисковой рабочей станции в IP-адрес. После получения пакета запроса RARP он находит IP-адрес данной станции в таблице отображений, затем записывает его в ответный пакет RARP и отсылает обратно рабочей станции -  таким образом, бездисковая рабочая станция получает свой IP.


3.3.4 Формат IP-дейтаграммы

В стандартах TCP/IP различные форматы данных часто представляются в виде пакета из 32 бит (или 4-х байт). Формат IP-дейтаграммы изображен на рис. 3-7.

Priority - Приоритет                                                                           

Unused – Неиспользуемый бит                            

Version - Версия                                                                   

Length of the header – Длина заголовка

Service type – Тип сервиса

Total length – Общая длина

ID - Идентификатор

Flag - Флаг

Fragment Offset – Смещение фрагмента

Protocol - Протокол

Header check sum – Контрольная сумма заголовка

Source station IP address – IP-адрес источника

Destination IP Address – IP-адрес получателя

Optional field with variable length – Поле опций переменной длины

Filling - Заполнение