Главная страница
Навигация по странице:

  • ARP Request (ARP-запрос)

  • Hardware Type (HTYPE)

  • Hardware Length (HLEN)

  • Operation code (Opcode)

  • Target Protocol Address (TPA)

  • 1. 1 История tcpIP


    Скачать 340.83 Kb.
    Название1. 1 История tcpIP
    АнкорDLink
    Дата30.05.2022
    Размер340.83 Kb.
    Формат файлаdocx
    Имя файлаDLink.docx
    ТипПротокол
    #557168
    страница23 из 26
    1   ...   18   19   20   21   22   23   24   25   26

    4 Протоколы разрешения адресов


    Передача данных через составную сеть выполняется на сетевом уровне модели OSI с использованием IP-адреса, но фактическая передача выполняется на канальным уровне, который использует адреса канального уровня, например, МАС-адреса.

    В этой главе мы опишем, каким образом по известному сетевому адресу (IP-адресу) узнать адрес канального уровня (МАС-адрес) устройства-получателя.

    Два из семи уровней модели OSI ответственны за функции адресации. Это канальный и сетевой уровни. В модели TCP/IP это уровни доступа к сети и Интернет.

    Рассмотрим пример: клиент локальный сети обращается к серверу www.dlink.ru (рис. 4.1).

    Логически соединение осуществляется между клиентом и сервером. Фактически клиент и сервер соединены последовательностью каналов связи, работающих по технологиям канального уровня. В примере таких каналов четыре. Они соединяют между собой маршрутизаторы, находящиеся между клиентом и сервером.

    На каждом шаге на основе IP-адреса получателя принимается решение, куда отправить данные, но фактическая передача выполняется на втором уровне, с использованием адреса канального уровня следующего предполагаемого получателя кадра на маршруте.

    Так как взаимодействующие устройства соединяются логически, используя IP-адрес, а фактическая передача происходит с использованием адресов канального уровня, возникает вопрос: как узнать адрес канального уровня получателя? Нужен механизм трансляции между адресами этих двух уровней.

    Процесс, позволяющий определить адрес канального уровня, используя известный адрес сетевого уровня, называется разрешением адресов (address resolution).

    Процесс разрешения адресов может выполняться двумя способами:

    • С помощью непосредственной привязки (direct mapping);

    • С помощью динамического разрешения адресов (dynamic resolution).

    При непосредственной привязке МАС-адрес получается из IР-адреса по определенному алгоритму. Этот метод практически не используется в силу ряда ограничений.

    Динамическое разрешение адресов выполняется с помощью специального протокола. Устройство, которое знает только сетевой адрес другого устройства, может использовать этот протокол, чтобы узнать его адрес канального уровня.

    4.1 Протокол ARP

    В стеке TCP/IP для разрешения адресов IPv4 используется протокол ARP. Он определен в RFC 826, опубликованном в 1982 году.

    Процесс разрешения адресов в протоколе ARP выполняется путем обмена сообщениями типа «запрос-ответ»:

    • ARP Request (ARP-запрос): источник (устройство, которому требуется отправить IP-пакет) посылает широковещательный запрос всем устройствам локальной сети, чтобы определить, кто является получателем пакета;

    • ARP Reply (ARP-ответ): устройство-получатель отправляет назад источнику одноадресное сообщение, сообщая в нем свой адрес канального уровня.

    Как и любой другой протокол, ARP имеет специальный формат сообщений, содержащий информацию, требуемую для разрешения адресов. Формат сообщения ARP довольно простой. Он включает поля, описывающие тип сообщения и адреса канального и сетевого уровней (рис. 4.2).

    • Hardware Type (HTYPE): указывает тип транспортного протокола, используемого для передачи сообщения ARP. Например, для Ethernet значение равно 0x0001.

    • Protocol Type (PTYPE): указывает тип адреса сетевого уровня, используемого в сообщении ARP. Для IPv4 значение равно 2048 (0800 hex).

    • Hardware Length (HLEN): указывает длину физического адреса в байтах. МАС-адреса имеют длину 6 байт.

    • Protocol Length (PLEN): указывает длину адреса сетевого уровня в байтах. Адреса IPv4 имеют длину 4 байта.

    • Operation code (Opcode): код операции отправителя: 1 в случае запроса и 2 в случае ответа.

    • Sender Hardware Address (SHA): физический адрес отправителя.

    • Sender Protocol Address (SPA): адрес сетевого уровня отправителя.

    • Target Hardware Address (THA): физический адрес получателя. Поле пусто при запросе.

    • Target Protocol Address (TPA): адрес сетевого уровня получателя.

    Поскольку ARP является протоколом динамического разрешения адресов, то каждое разрешение адресов требует обмена сообщениями по сети. Каждый раз, когда устройство отправляет ARP-сообщение, оно использует полосу пропускания сети, а также загружает ЦПУ сетевых устройств на его обработку.

    Решением данной проблемы является использование кеширования (caching). ARP-кеш представляет собой таблицу, связывающую между собой MAC- и IP-адреса узлов. По сути, таблица — это просто разделы оперативной памяти устройства.

    Каждое устройство в сети создает и обслуживает свою собственную таблицу ARP. Существует два способа создания записей в таблице ARP:

    • Статические записи (Static ARP Entries): записи, связывающие физические адреса с IP-адресами создаются вручную и постоянно хранятся в таблице ARP. Статические записи можно использовать в том случае, если устройства взаимодействуют на постоянной основе.

    • Динамические записи (Dynamic ARP Entries): связки физический адрес/IP-адрес, создаются динамически в результате работы протокола ARP. Они хранятся в таблице только определенный период времени и затем удаляются. Это делается для того, чтобы не использовать много системной памяти и записи в таблице были актуальными.

    В таблице ARP могут храниться как статические, так и динамические записи. На рисунках 4.3 и 4.4 показаны ARP-таблицы коммутатора и подключенного к нему компьютера.

    Администратор сети может управлять ARP-таблицей устройств, в которых реализован стек TCP/IP: просматривать записи, создавать статические записи, удалять записи, устанавливать время жизни динамических записей. На рабочих станциях это выполняется с помощью утилиту arp. Управление ARP-таблицей сетевых устройств выполняется с использованием специальных команд, определенных в их программном обеспечении.
    1   ...   18   19   20   21   22   23   24   25   26


    написать администратору сайта