6. Преобразование адресов для PVC
В данном документе вопросы преобразования адресов рассматриваются только для постоянных соединений PVC. Работа с коммутируемыми соединениями SVC будет рассмотрена в других документах.
В некоторых ситуациях станциям Frame Relay может потребоваться динамическое преобразование протокольных адресов. Преобразование адресов может быть выполнено с помощью стандартного протокола ARP (Address Resolution Protocol) [RFC826], инкапсулированного в пакетах Frame Relay со SNAP-кодированием:
+-----------------------+-----------------------+ | Адрес Q.922 | +-----------------------+-----------------------+ | Control (UI) 0x03 | pad 0x00 | +-----------------------+-----------------------+ | NLPID 0x80 | | Заголовок SNAP +-----------------------+ OUI 0x00-00-00 + показывающий | | ARP +-----------------------+-----------------------+ | PID 0x0806 | +-----------------------+-----------------------+ | Пакет ARP | | . | | . | | . | +-----------------------+-----------------------+
Пакет ARP использует следующие форматы и значения:
ar$hrd | 16 битов | тип оборудования (Hardware type) |
ar$pro | 16 битов | тип протокола (Protocol type) |
ar$hln | 8 битов | размер аппаратного адреса в октетах (n) |
ar$pln | 8 битов | размер протокольного адреса в октетах (m) |
ar$op | 16 битов | код операции (запрос или отклик) |
ar$sha | n октетов | аппаратный адрес отправителя |
ar$spa | m октетов | протокольный адрес отправителя |
ar$tha | n октетов | аппаратный адрес получателя |
ar$tpa | m октетов | протокольный адрес получателя |
- ar$hrd — для Frame Relay используется десятичное значение 15 (0x000F) [RFC1700].
- ar$pro — см. номер протокола ID для использования ARP (0x0800).
- ar$hln — размер адресного поля в байтах (2, 3 или 4)
- ar$pln — размер протокольного адреса зависит от протокола (ar$pro); для IP ar$pln=4.
- ar$op — 1 для запросов, 2 для откликов.
- ar$sha — аппаратный адрес Q.922 для отправителя с C/R, FECN, BECN и DE, равными 0.
- ar$tha — аппаратный адрес Q.922 для получателя с C/R, FECN, BECN и DE, равными 0.
Поскольку идентификаторы DLCI в большинстве сетей Frame Relay имеют лишь локальное значение, конечные станции не имеют в результате собственных (уникальных) идентификаторов DLCI. Следовательно, такие станции не имеют адреса, который можно было бы включить в запрос или отклик ARP. К счастью, в сетях Frame Relay существует способ получения корректных значений DLCI. Предложенное ниже решение для сетей Frame Relay с локальной адресацией будет также хорошо работать в сетях, где идентификаторы DLCI имеют глобальную значимость.