RFC: 1122
Оригинал: Requirements for Internet Hosts - Communication Layers
Категория: Стандарт Интернета
Дата публикации:
Автор:
Перевод: Николай Малых
3.3.1.2 Выбор шлюза

Для эффективной маршрутизации группы дейтаграмм одному получателю хост-отправитель должен сохранять кэш маршрутов. Хост использует описанный ниже алгоритм для маршрутизации дейтаграмм с использованием кэша (алгоритм предназначен прежде всего для переноса основного бремени маршрутизации на шлюзы) [RFC816].

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

  • Если шлюз не является лучшим путем к адресату, он должен будет переслать дейтаграмму наиболее подходящему маршрутизатору и вернуть хосту-отправителю сообщение ICMP Redirect.

  • Получив сообщение Redirect, хост обновляет шлюз в соответствующей записи кэша для того, чтобы последующие дейтаграммы доставлялись по более эффективному пути.

Поскольку маска сети для адреса получателя в общем случае неизвестна, сообщения Network Redirect должны трактоваться аналогично сообщениям Host Redirect, т.е. запись в кэше для хоста-получателя (и только для него) будет обновляться (или создаваться, если ранее ее не было) с учетом нового шлюза.

  • Обсуждение:
  • Эта рекомендация предназначена для защиты от шлюзов, передающих сообщения Network Redirect в сеть с подсетями, в нарушение требований к маршрутизаторам [RFC1009].

При отсутствии в кэше записи для адреса получателя (если адресат не находится в подключенной сети) уровень IP должен выбрать маршрутизатор из своего списка принятых по умолчанию шлюзов (default gateway). Уровень IP должен поддерживать множество используемых по умолчанию шлюзов.

В качестве дополнительной возможности уровень IP хоста может реализовать таблицу статических маршрутов (static route). Каждый статический маршрут может включать флаг, определяющий возможность переписывания этого маршрута с помощью ICMP Redirect.

  • Обсуждение:
  • Для начала работы хосту требуется знать по крайней мере один используемый по умолчанию шлюз. Эту информацию можно получить из конфигурационного файла или загрузочного сценария (например, BOOTP — [RFC1123]).

    Предполагается, что хост может расширять список используемых по умолчанию шлюзов, добавляя в него маршрутизаторы по мере их обнаружения. Например, хост может записывать каждый шлюз, на который пересылает пакеты. Такое решение может оказаться очень эффективным для некоторых случаев, но в иных ситуациях (не все маршрутизаторы одинаковы) оно может порождать проблемы и, поэтому, не рекомендуется.

    Статический маршрут представляет собой отображение хоста или сети на тот или иной следующий маршрутизатор (next-hop gateway); маршрут может также зависеть от типа обслуживания (ToS), рассматриваемого в следующем параграфе. Статические маршруты устанавливаются администратором сети взамен нормальных механизмов автоматической маршрутизации и для обслуживания исключительных ситуаций. Однако, следует помнить, что статические маршруты являются потенциальным источником ошибок при изменении конфигурации или повреждениях оборудования.

2007 - 2017 © Русские переводы RFC, IETF, ISOC.