Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Part_3-2.doc
Скачиваний:
8
Добавлен:
24.11.2019
Размер:
2.84 Mб
Скачать
      1. Протокол ospf

Протокол Open Shortest Path FirstOSPF (“відкритий - першим найкоротший шлях”) – це протокол раутінгу, опрацьований для IP-протоколу робочою групою внутрішніх шлюзових протоколів (Interior Gateway Protocol - IGP) IETF. OSPF опрацьований для використання в Internet та інших великих об’єднаннях мереж, оскільки протокол RIP нездатний обслуговувати великі неоднорідні (гетерогенні) мережі.

Як це випливає із назви, OSPF має дві основні особливості. Перша полягає в тому, що протокол є відкритим, тобто його спеціфікації є загальнодоступні та опубліковані в документі RFC 1247. Другою принциповою особливістю є те, що цей протокол базується на алгоритмі shortest path first (SPF), запропонованому Дійкстрою (Dijkstra).

Протокол OSPF описаний у RFC 1583, який замінив застарілий RFC 1247. OSPF є внутрішнім роаутінговим протоколом (IGP), але він спроектований для взаємодії із придатним зовнішнім протоколом раутінгу, наприклад, із BGP. OSPF – це значно складніший стандарт від RIP: його опис у RFC 1583 займає 216 сторінок порівняно із 33 сторінками для RFC 1058 (RIP) і 9 сторінками для RIP-2 (КАС 1723). Більша складність OSPF є наслідком окремих цілей: досягнення того, щоб топологічні бази даних були ідентичними для всіх раутерів всередині області. Оскільки база даних є основою для всіх рішень щодо раутінгу, то коли раутери мають незалежні бази даних, то вони можуть приймати взаємно протирічиві рішення.

OSPF здійснює комунікацію через протокол IP (номер протоколу 89).

        1. Основи технології

OSPF є протоколом раутінгу з використанням метрики “зв’язок-стан”. Тому він запитує про оголошення стану звязків (Link State Advertisement - LSA) всі інші раутери всередині тієї самої ієрархічної області. До LSA включена інформація про під’єднані інтерфейси, використані метрики та інші змінні. Коли раутери OSPF нагромадять інформацію про стан зв’язків, то вони застосовують алгоритм SPF для обчислення найкоротшого шляху до кожного вузла.

Як протокол раутінгу з використанням стану зв’язків, OSPF відрізняється від RIP та IGRP, які є протоколами з використанням метрики “вектор-відстань”. Раутери, які вживають алгоритм “вектор-відстань”, висилають цілу таблицю раутінгу або її частину у повідомленнях модифікації раутінгу, але тільки до своїх безпосередніх сусідів.

Ієрархія раутінгу. На відміну від RIP, OSPF може діяти в ієрархічній структурі. Найбільшим об’єктом в ієрархії є автономна система (Autonomous System - AS). AS є множиною мереж під спільним адмініструванням, яка спільно використовує загальну стратегію раутінгу. OSPF є протоколом раутінгу всередині автономної системи (тобто внутрішньошлюзовим протоколом), хоч він здатний до приймання маршрутів від інших автономних систем та до пересилання маршрутів до них.

Автономна система може бути поділена на певну кількість областей. Область – це група суміжних мереж і гостів (станцій), приписаних до них. Раутери з багатьма інтерфейсами можуть бути співучасниками багатьох областей. Ці раутери, які називають граничними раутерами областей, обслуговують окремі топологічні бази даних для кожної області.

Топологічні бази даних суттєві у загальній картині відносин між мережами та раутерами. Топологічні бази даних містять збірку повідомлень стану зв’язків, прийнятих від всіх раутерів у тій самій області. Оскільки раутери всередині однієї області спільно використовують ту ж інформацію, то вони мають ідентичні топологічні бази даних. Поняття “домен” водночас вживається для опису частини мережі, в якій всі раутери мають ідентичні топологічні бази даних. Поняття “домен” часто вживається як синонім до поняття “автономна система”.

Топологія області невидима для об’єктів, розташованих зовні області. Щоб зв’язати окремі топології областей, OSPF пересилає менший трафік раутінгу, ніж це необхідно, якщо AS не поділені на області. Поділ на області створює два типи раутінгу OSPF - всередині області або між областями, залежно від того, чи джерело та призначення містяться в одній, чи в різних областях.

Магістраль (backbone) OSPF відповідальна за розподіл інформації раутінгу між областями. Вона складається із всіх граничних раутерів областей, мереж та під’єднаних до них раутерів, які не повністю містяться в будь-якій області. Рис. 3.57 показує приклад об’єднання мереж з декількома областями. На цьому рисунку раутери 4, 5, 6, 10, 11 і 12 утворюють магістраль. Якщо станція (гост) H3 в області 3 хоче вислати пакет до станції H2, то пакет висилається до раутера 13, який пересилає пакет до раутера 12, а він – до раутера 11. Раутер 11 пересилає пакет через магістраль до граничного раутера області 10, який висилає пакет через два внутрішньообласні раутери (раутер 9 і раутер 7) для доручення його станції H2.

Сама магістраль є областю OSPF, так що магістральні раутери використовують ті самі процедури та алгоритми для обслуговування інформації раутінгу всередині магістралі, що й будь-які раутери всередині областей. Топологія магістралі невидима для всіх внутрішньообласних раутерів, як і індивідуальна топологія області з боку магістралі.

Області можуть бути визначені таким чином, що частини магістралі не є суміжними. У цьому випадку зв’язність магістралі повинна бути відновлена через віртуальні зв’язки. Віртуальні зв’язки конфігуруються між довільними раутерами магістралі, які спільно використовують зв’язок із немагістральною областю, і діють аналогічно до безпосереднього зв’язку. Граничні раутери автономної системи, які використовують OSPF, вивчають зовнішні маршрути через зовнішній шлюзовий протокол (Exterior Gateway Protocol - EGP), граничний шлюзовий протокол (Border Gateway Protocol -BGP) або через конфігураційну інформацію.

Р ис. 3.57. Ієрархічне об’єднання мереж для OSPF.

Нижче наведені окремі означення, необхідні для розуміння послідовності операцій, описаних нижче.

Область (Area) – множина мереж всередині окремої автономної системи, які можуть згруповані разом. Топологія області невидима для решти автономної системи і кожна область має окрему топологічну базу даних. Раутінг всередині автономної системи здійснюється на двох рівнях, залежно від того, чи джерело і призначення пакету розташовані в тій самій області (внутрішньообласний раутінг – intra-area routing), чи в різних областях (міжобласний раутінг – inter-area routing).

Внутрішньообласний раутінг визначений тільки для власної топології області, тобто пакет маршрутується виключно на підставі інформації, наявної всередині області; жодна інформація, отримана зовні області, не може бути використана для внутрішньообласного раутінгу.

Міжобласний раутінг завжди здійснюється через магістраль.

Магістраль (Backbone) – складається із мереж, які не містяться всередині жодної області, раутерів, під’єднаних до них, а також із раутерів, які належать до багатьох областей. Магістраль мусить бути логічно цілісною. Якщо вона не цілісна фізично, то окремі компоненти повинні бути сполучені із використанням віртуальних звязків. Магістраль відповідає за розподіл раутінгової інформації між областями. Сама магістраль має всі властивості області; її топологія відокремлена від топології областей.

Граничний раутер області(Area Border Router) – раутер, під’єднаний до багатьох областей. Граничний раутер області має копії топологічних баз даних кожної області, до якої він під’єднаний. Він завжди є частиною магістралі. Граничні раутери областей призначені для поширення інформації для внутрішньообласного раутінгу в областях, до яких вони під’єднані.

Внутрішній раутер (Internal Router)– це раутер, який не є граничним раутером області.

Граничний раутер автономної системи (AS Border Router ASBR) – раутер, якій здійснює обмін раутінговою інформацією з раутерами, розташованими в інших автономних системах. Всі раутери в AS знають шлях до всіх ASBR. Граничний раутер автономної системи може бути граничним раутером області або внутрішнім раутером. Він не мусить бути частиною магістралі.

Примітка. Назви раутерів цього типу різні. RFC 1583, який описує OSPF, використовує назву AS Boundary Router. RFC 1267 і RFC 1268, які описують BGP, вживають термін Border Router і Border Gateway. RFC 1340, який описує взаємодію між протоколами OSPF і BGP, використовує термін AS Border Router.

Віртуальний зв’язок (Virtual Link) – це частина магістралі. Його кінцеві пункти – це два граничні раутери областей, які спільно використовують немагістральну область. Зв’язок розглядається подібно до зв’язку “пункт-пункт” з метрикою, рівною міжобласній метриці між кінцевими пунктами зв’язку. Раутінг через віртуальний зв’язок здійснюється з використанням звичайного внутрішньообласного раутінгу.

Транзитна область (Transit Area) – область, через яку фізично сполучений віртуальний зв’язок.

Область-відгалуження (Stub Area) – область, сконфігурована для використання раутінгу за замовчуванням при раутінгу між автономними системами. Область-відгалуження може бути конфігурована, якщо вона має тільки один вихід із області, або якщо жодний вихід не може бути використаний без переваги для раутінгу до призначення поза автономною системою. За замовчуванням маршрути між AS копіюються до всіх областей, так що використання областей-відгалужень може скоротити вимоги до запам’ятовуючих пристроїв раутерів всередині таких областей для тих автономних систем, для яких визначені маршрути між AS.

Мережа з багатьма доступами (Multiaccess Network) – фізична мережа, яка підтримує зв’єязки із багатьма раутерами. Кожна пара раутерів у такій мережі вважається здатної до прямої комунікації.

Протокол Hello (Hello Protocol) – частина протоколу OSPF, яка використовується для встановлення і обслуговування відносин між сусідами.

Сусідні раутери (Neighboring Routers) – два раутери, які мають інтерфейси до спільної мережі. У мережі з багатьма доступами сусіди динамічно виявляються протоколом Hello. Кожен сусід описаний машиною станів, яка описує переговори між цим раутером і його сусідами. Короткий виклад значень станів наведено нижче.

Зупинений (down) – початковий стан переговорів між сусідами. Він означає, що вони не мають нової інформації, прийнятої від сусіда.

Спроба (attempt) – сусід неширокомовної мережі зупинений і намагається встановити контакт із нею через висилання регулярного пакету Hello.

Початок (init) – пакет Hello недавно прийнятий від сусіда, однак двостороння комунікація із сусідом ще не встановлена, тобто сам раутер ще не з’явився в пакеті Hello від сусіда.

Двошляховий (2-way) – у цьому стані комунікація між двома раутерами двостороння. Суміжність встановлена і сусіди у цьому стані або у вищих можуть бути вибрані як призначені (або резервні) раутери.

ExStart – два сусіди біля створення суміжності.

Обмін (exchange) – два сусіди повідомляють один одного про вміст своїх топологічних баз даних.

Завантаження (Loading) – два сусіди синхронізують свої топологічні бази даних.

Повний (full) – два сусіди тепер повністю суміжні; їх бази даних синхронізовані. Різні події обумовлюють зміну стану. Наприклад, якщо раутер приймає пакет Hello від сусіда, який зупинений (down), то стан сусіда змінюється на початок (init) і таймер неактивності стартує. Якщо таймер вичерпаний (тобто не прийняті подальші пакети OSPF перед вичерпанням таймера), то сусід може повернутися до стану зупинений.

Суміжність (adjacenty) відношення, сформоване між вибраними сусідніми раутерами з метою обміну раутінговою інформацією. Не будь-яка пара сусідніх раутерів може здобути суміжнісь. Зокрема, не кожна пара раутерів може бути зсинхронізована. Якщо всі сусіди зсинхронізовані, то кількість зсинхронізованих пар у мережі з багатьма доступами, наприклад, у LAN, може становити n(n-1)/2, де n -кількість раутерів у LAN. У великих мережах трафік синхронізації може перевантажити мережу, зменшуючи її придатність. Концепція суміжності використовується для обмеження кількості пар, які синхронізуються, до 2n-1 , завдяки чому обсяг трафіку синхронізації стає керованим.

Оголошення стану звязку (Link State Advertisiment) – відновисться до локального стану раутера або мережі. Включає стан інтерфейсів раутерів і суміжностей. Кожен стан зв’язку поширюється через домен раутінгу. Об’єднання оголошень стану зв’язку для всіх раутерів і мереж формує топологічну базу даних області.

Поширення (Flooding) – процес досягнення того, що кожне оголошення стану зв’язку пересилається між суміжними раутерами, щоб досягнути кожен раутер в області. Процедура поширення є надійною.

Призначений раутер (Designated Router) – кожна мережа із багатьма доступами, яка має щонайменше два під’єднані раутери, має призначений раутер. Призначений раутер генерує оголошення стану зв’язку для мережі з багатьма доступами. Призначений раутер вибирається протоколом Hello. Він отримує суміжність із усіма іншими раутерами у мережі. Оскільки топологічні бази даних всіх раутерів синхронізуються через суміжності, то призначений раутер відіграє головну роль у процесі синхронізації.

Резервний призначений раутер (Backup Designated Router) щоб зробити перехід до нового призначеного раутера плавнішим, у кожній мережі із багатьма доступами використовують резервний призначений раутер. Резервний призначений раутер також суміжний з усіма раутерами в мережі і стає призначеним раутером, якщо попередній призначений раутер відмовив. Оскільки суміжності завжди існують між резервним призначеним раутером та всіма іншими раутерами, під’єднаними до мережі, то не потрібно формувати нові суміжності, коли резервний призначений раутер заміщає призначений раутер, скорочуючи необхідний час. Резервний призначений раутер вибирається протоколом Hello.

Інтерфейс (Interface) – сполучення між раутером та одною із під’єднаних до нього мереж. Кожен інтерфейс має інформацію стану, пов’яззану з ним, яка використовується підпорядкованими протоколами нижчих рівнів, а також самим протоколо OSPF. Короткий опис кожного стану наведений нижче:

Зупинений (down) – інтерфейс недоступний. Це початковий стан інтерфейсу.

Зворотна петля (loopback) – інтерфейс раутера, замкнений на нього ж. Не може вживатися для регулярного трафіку даних.

Очікування (waiting) – раутер має труднощі із визначенням призначеного раутера або резервного призначеного раутера.

Пункт-пункт (point-to-point) – інтерфейс є мережею пункт-пункт або віртуальним зв’язком. Раутер формує суміжність з раутером на іншому кінці.

Примітка. Інтерфейси не потребують IP-адрес. Оскільки решта об’єднання мереж (internet) не потребує бачити інтерфейси раутера до зв’язку пункт-пункт, як і його інтерфейси до інших мереж, то будь-які IP-адреси для цього зв’язку можуть бути потрібні тільки для комунікації між двома раутерами. Для ощадності адресного простору IP раутери можуть обійтися без IP-адрес зв’зяку. Такі зв’яки називають ненумерованими.

Інший призначений раутер (DR Other) – це інтерфейс до мережі з багатьма доступами, однак цей раутер не є ані призначеним раутером, ані резервним призначеним раутером.

Резерв (Backup) – це резервний призначений раутер. Він стає призначеним раутером, якщо актуальний призначений раутер відмовив.

DR – це призначений раутер.

Метрики типу послуг (Type of Service metrics) – у кожному типі оголошень стану зв’язку можуть бути оголошені різні метрики для кожного типу послуг IP (Type of Service – TOS). Метрика для TOS 0, завжди повинна бути визначена; якщо це не так, то ці метрики приймаються рівними метриці, визначеній для TOS 0.

База даних стану зв’язку (Link State Database) – також називається спрямованим графом або топологічною базою даних; створюється із оголошень стану зв’язку, генерованих раутерами в області.

Примітка. RFC 1583 вживає термін Link State Database переважно до топологічних баз даних. Старий термін має ту перевагу, що він описує змість бази даних, новий є більш описовим стосовно завдань бази даних – опису топології області. З цих міркувань туту переважно вживається термін топологічна база даних, однак при розгляді подробиць операцій OSPF на неї посилаються як на базу даних стану звязку.

Дерево найкоротших шляхів (Shortest Path Tree) – кожен раутер виконує алгоритм Shortest Path First (SPF) длябази даних станів зв’язку, отримуючи дерево найкоротших шляхів. Дерево дає маршрут до будь-якої мережі-призначення або станції-призначення до меж області. Вони вживаються для побудови таблиці раутінгу.

Примітка. Оскільки кожен раутер займає інше місце в топології області, то застосування алгоритму SPF дає різні дерева для кожного раутера, навіть коли бази даних ідентичні. Граничні раутери областей використовують багато копій алгоритму, але будують одну таблицю раутінгу.

Таблиця раутінгу (Routing Table) – містить входи для всіх призначень: мереж, підмереж і станцій. Для кожного призначення є інформація для одного або більше типів послуг (TOS). Для кожної комбінації призначення і типу послуг існують входи для одного або більше оптималдьних шляхів, які можна використати.

Ідентифікатор області (Area ID) 32-бітове число, яке ідентифікує конкретну область. Магістраль має ідентифікатор області 0.

Ідентифікатор раутера (Router ID) 32-бітове число, яке ідентифікує конкретний раутер. Кожен раутер всередині AS має окремий ідентифікатор. Можливим впровадженням є використання найменшої IP-адреси, яка належить раутеру, як ідентифікатора раутера.

Пріоритет раутера (Router Priority) – 8-бітове число без знаку, яке конфігурується через інтерфейс і вказує на пріоритет цього раутера при виборі (резервного) призначеного раутера. Пріоритет рактера 0 вказує, що цей раутер небажаний як призначений раутер.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]