RFC: 922
Оригинал: Broadcasting Internet datagrams in the presence of subnets
Категория: Стандарт Интернета
Дата публикации:
Автор:
Перевод: Николай Малых

RFC 922, Страница 6 из 9

6. Шлюзы и рассылка широковещательных дейтаграмм

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

6.1. Локальное широковещание

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

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

  • Если дейтаграмма получена из физической сети, в которую она адресована, такую дейтаграмму не следует пересылать. Однако, шлюзу следует рассматривать себя как получателя дейтаграмм (например, при рассылке маршрутных обновлений).

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

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

6.2. Широковещание во множество подсетей

Когда шлюз получает широковещательную дейтаграмму, предназначенную для всех подсетей IP, он должен использовать алгоритм RPF для принятия решения. Этот метод прост – шлюз должен переслать копии дейтаграммы через все подключенные к нему каналы тогда и только тогда, когда дейтаграмма принята из канала, который является частью лучшего пути между шлюзом и отправителем дейтаграммы. В остальных случаях дейтаграммы должны отбрасываться.

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

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