Пример разбиения на области
Рассмотрим автономную систему, изображенную на рис. 5.4.1. Кружками обозначены маршрутизаторы, буквами- IP-сети, к которым они подключены.
Рис. 5.4.1. Пример разбиения OSPF-системы на области
Система поделена на три области, из которых область номер 0 (area 0) является магистралью (backbone). Маршрутизаторы ?
и ?
являются пограничными маршрутизаторами автономной системы. Маршрутизаторы ?
, ?
, ?
, ?
- областные пограничные маршрутизаторы. Сети A, B, C, G, K, H принадлежат магистрали. Метрики связей с каждой сетью равны 1.
Рассмотрим содержимое базы данных состояния связей в области 1. В этой базе данных находятся:
1. Записи о связях маршрутизаторов ?
, ?
, ?
, ?
с сетями D, F, J, источниками которых являются эти маршрутизаторы; на основании этих записей рассчитываются маршруты внутри области 1 (см. также ).
2. Записи о достижимости сетей магистрали (A, B, C, G, K, H); вносятся маршрутизаторами ?
и ?
на основании вычислений по базе данных магистрали, копию которой каждый из них имеет, так как подключен к магистрали непосредственно. При этом каждый из них объявляет только кратчайшее расстояние от себя каждой сети магистрали для того, чтобы внутренние маршрутизаторы области могли строить маршруты до сетей магистрали в соответствии с этими значениями через тот или иной ABR.
Например, для сети А ABR ?
объявит маршрутизаторам области 1 метрику 2, а ?
- метрику 3. Маршрутизатор ?
не знает, каким маршрутом ?
или ?
будут отправлять дейтаграммы в сеть А, однако он знает, что от него до узла ?
кратчайший маршрут - D c метрикой 1, а до узла ?
- маршрут FJ с метрикой 2 (не маршрут DG, потому что G не принадлежит области 1). Следовательно, ?
делает вывод, что кратчайший путь в сеть А имеет метрику 3 и проходит через ?
, а как достичь маршрутизатора ?
, ему известно.
3. Записи о достижимости сетей области 2 (E, I, L); вносятся маршрутизаторами ?
и ?
на основании метрик расстояний до этих сетей, объявленных в магистраль ABR-маршрутизаторами ?
и ?
. При этом каждый из узлов ?
и ?
добавляет к этим метрикам длину кратчайшего пути по магистрали от себя до ?
и ?
, после чего для каждой сети области 2 выбирает наименьшее значение и объявляет его в область 1.
Например, ?
объявляет в магистраль, что сеть Е достижима через него с метрикой 1, а ?
- что та же сеть достижима через него с метрикой 3 (маршрут "НЕ" находится за пределами области 2). Маршрутизатор ?
получает эти сообщения и вычисляет по своей копии базы данных магистрали, что метрика кратчайшего пути от него до ?
равна 2, а до ?
- 1. Следовательно, расстояние до сети Е от узла ?
равно 3, если следовать через ?
, и 4, если следовать через ?
. На основании этого результата ?
объявляет в область 1, что сеть Е достижима через него с метрикой 3.
Для внутренних маршрутизаторов области 1 объявления областных пограничных маршрутизаторов о достижимости сетей магистрали и о достижимости сетей области 2 неотличимы по своему виду. И то и другое суть объявления о достижимости сетей автономной системы, не входящих в данную область (см. ).
4. Записи о достижимости сетей за пределами автономной системы; вносятся маршрутизаторами ?
и ?
и представляют собой просто ретрансляцию сообщений о внешних маршрутах, распространяемых пограничными маршрутизаторами системы (?
и ?
) (см. также ).
5. Записи о достижимости пограничных маршрутизаторов автономной системы (?
и ?
); вносятся маршрутизаторами ?
и ?
на основании вычислений по базе данных магистрали, к которой подключены ?
и ?
(см. также ). Каждый ABR объявляет кратчайшее расстояние от себя до каждого ASBR, которого он может достичь. Такие объявления необходимы, так как внутрь области не распространяется информация о маршрутах к маршрутизаторам других областей.
Аналогичным образом строятся базы данных состояния связей в области 2 и в магистрали.