Алгоритм SRB
Свое название мосты SRB получили потому, что они предполагают размещение полного маршрута от источника до пункта назначения во всех межсетевых (LAN) блоках данных, отправляемых источником. SRB хранят и продвигают эти блоки данных в соответствии с указаниями о маршруте, содержащимися в соответствующем поле блока данных. На Рис. 6.5
представлен образец сети SRB.
Рис. 6.5. Sample SRB Network
Предположим, что Хост Х на Рис. 6.5 решила отправить блок данных в Хост Y. Вначале машина Х не знает, где находится машина Y-в той же или в другой LAN. Чтобы определить это, она отправляет тестовый блок данных. Если этот блок данных возвращается к ней без положительного указания о том, что машина Y видела его, то она должна предположить, что машина Y находится в отдаленном сегменте.
Чтобы точно определить местоположение отдаленной машины Y, машина Х отправляет блок данных разведчика (explorer). Каждый мост, получающий этот блок данных (в нашем примере это Мосты 1 и 2), копирует его во все порты отправки сообщений. По мере продвижения блоков данных-разведчиков через объединенную сеть они дополняются маршрутной информацией. Когда блоки данных-разведчики машины Х доходят до машины Y, то машина Y отвечает каждому отдельно, используя накопленную маршрутную информацию. После получения всех ответных блоков данных машина Х может выбрать маршрут, базирующийся на заранее установленном критерии.
В примере, приведенном на Рис. 6.5, результатом этого процесса будут два маршрута:
- LAN 1 - Bridge 1 - LAN 3 - Bridge 3 - LAN 2
- LAN 1 - Bridge 2 - LAN 4 - Bridge 4 - LAN 2
Машина Х должна выбрать один из этих двух маршрутов. Спецификация IEEE 802.5 не назначает критерий, который машина Х должна использовать для выбора маршрута; однако в ней имеется несколько предложений, которые перечислены ниже:
- Первый принятый блок данных
- Ответ с минимальным числом пересылок
- Ответ с самым большим разрешенным размером блока данных
- Различные комбинации перечисленных выше критериев
В большинстве случаев выбирается тракт, содержащийся в первом полученном блоке данных.
После того, как маршрут выбран, он включается в блоки данных, предназначенных для машины Y, в форме поля маршрутной информации (routing information field - RIF). RIF включается только в блоки данных, предназначенных для других LAN. Наличие маршрутной информации в блоке данных указывается путем установки самого значащего бита, называемого битом индикатора маршрутной информации (routing information indicator - RII), в поле адреса источника.