Маршрутизатори в розподілених мережах, Журнал мережевих рішень

Маршрутизатор є одним із основних компонентів розподілених мереж передачі даних. Насправді створення розподілених мереж було б неможливим без маршрутизаторів. ЩО ТАКЕ МАРШРУТИЗАТОР? АЛГОРИТМИ МАРШРУТИЗАЦІЇ ВИЗНАЧЕННЯ КОРОТКОГО ШЛЯХУ ПРИКЛАД ТАБЛИЦІ МАРШРУТИЗАЦІЇ СПРАВЕДЛИВА ЧЕРГА? ВИДИ МАРШРУТИЗАТОРІВ ЧИМ ВІДМІНЮЮТЬСЯ МАРШРУТИЗАТОРИ ВІД МОСТІВ?

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

Незважаючи на те, що місце маршрутизаторів все частіше займають комутатори, створення великих розподілених мереж без них, як і раніше, неможливо. Саме маршрутизатори використовуються в корпоративних мережах для організації зв'язку між локальними мережами та віддаленими офісами. З іншого боку, є невід'ємним компонентом мереж операторів Internet, т. е. самої Мережі.

ЩО ТАКЕ МАРШРУТИЗАТОР?

АЛГОРИТМИ МАРШРУТИЗАЦІЇ

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

журнал

Крок за кроком. У початковий момент відстань до відправника і те, якою вузол лежить маршрут, невідомо, у дужках зазначено нескінченне відстань і стоїть прочерк для попереднього вузла. Вузли, від яких найкоротша відстань до відправника стає відомо, отримують постійну мітку (чорний кружечок).Поточний вузол на кожному етапі відзначений стрілкою. Усього показано шість перших кроків алгоритму.

ВИЗНАЧЕННЯ КОРОТКОГО ШЛЯХУ

Для визначення найкоротшого шляху від одного вузла до іншого Дейкстра запропонував такий алгоритм. Топологія мережі представляється як неорієнтованого графа із зазначеними кожному за ребра значеннями метрики (наприклад, відстані між двома сусідніми вузлами). Спочатку шлях невідомий, тому всі вершини графа одержують мітки з нескінченним значенням відстані до відправника. Мітки можуть бути тимчасовими чи постійними.

Нехай потрібно знайти найкоротший шлях від А до Z. Спочатку вузол А отримує постійну мітку і робиться поточним вузлом. Потім ми переглядаємо всі сусідні вузли (з якими вершина А з'єднана рубом) і відзначаємо відстань до А. Після того, як всі сусідні вузли перебрані, вузол з найменшою міткою вибирається як поточний, при цьому він отримує постійну мітку. Нехай це буде вузол B. Тепер ми переглядаємо всі сусідні вузли, і якщо сума відстаней від B до А і від даного вузла до B менше значення мітки цього вузла, він отримує нову мітку, причому ми вказуємо, що шлях в А лежить через B , щоб після завершення процедури можна було відновити маршрут. Після перебору всіх сусідніх вузлів ми знову шукаємо по всьому графу вершину з найменшою тимчасовою міткою і вибираємо цей вузол як поточний, при цьому він отримує постійну мітку і т.д.

ПРИКЛАД ТАБЛИЦІ МАРШРУТИЗАЦІЇ

ТАБЛИЦЯ 1 - ПРИКЛАД НАЙпростішої ТАБЛИЦІ МАРШРУТИЗАЦІЇ

ОдержувачШлюзПрапориІнтерфейс
default137.187.2.3UGtt0
127.0.0.1127.0.0.1UHlo0
199.18.210.0199.18.210.1UGed0
137.175.2.7199.18.210.1UHdu0
137.187.2.3131.187.2.2UHtt0
137.175.2137.175.2.7UGdu0

СПРАВЕДЛИВА ЧЕРГА?

У випадку, якщо маршрутизатор отримує пакети швидше, ніж може відправити їх через даний інтерфейс (наприклад, коли вхідний інтерфейс швидше вихідного або коли пакети з різних вхідних інтерфейсів направляються на той самий вихідний інтерфейс), він поміщає їх у чергу (буфер).

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

Вирішення цієї проблеми пропонує алгоритм "чесної черги" та його модифікація - алгоритм "чесної виваженої черги" (Weighted Fair Queue). Суть даного алгоритму у тому, що маршрутизатори мають кілька черг кожної вихідний лінії, по одній кожному відправника. Коли лінія звільняється, маршрутизатор бере пакет із наступної по колу черги. Модифікований алгоритм дозволяє давати пріоритет тим чи іншим чергам.

ВИДИ МАРШРУТИЗАТОРІВ

У попередньому розділі під словом "маршрутизатор" мав на увазі перш за все IP-маршрутизатор, тобто він призначений тільки для просування IP-пакетів. Однак маршрутизатори можуть працювати і з іншими пакетамипротоколів мережного рівня, наприклад IPX. Таким чином, окрім IP-маршрутизаторів є ще IPX-маршрутизатори та ін.

Багатопротокальні маршрутизатори концептуально нагадують мости з тією суттєвою різницею, що вони працюють на мережному рівні. Як і будь-який маршрутизатор, вони беруть пакет з однієї лінії та передають його на іншу, але при цьому лінії належать до різних мереж та використовують різні протоколи (наприклад, IP та IPX).

Крім того, мережні пристрої типу моста/маршрутизатора (brouter або bridge/router) працюють у нормальному режимі як багатопротокольні маршрутизатори, а при отриманні пакета з невідомим протоколом мережі обробляють його як міст. Інші пристрої зі схожою назвою "маршрутизуючий міст" (routing bridge) належать до пристроїв другого рівня і згадуються тут лише через причастя routing. Вони працюють як мости, але підтримують деякі функції третього рівня для оптимізації передачі даних.

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

ЧИМ ВІДРІЗНЯЮТЬСЯ МАРШРУТИЗАТОРИ ВІД МОСТІВ?

Маршрутизатори часто плутають із мостами. А "Вебстерський словник комп'ютерних термінів" взагалі пише, що маршрутизатор – це інша назва мосту. Такий стан справ пояснюється тим, що багато пристроїв поєднують у собі функції і мостів, і маршрутизаторів.

"Чистий" міст аналізує заголовки кадру канального рівня та не переглядає (а тим більше не модифікує) пакети мережного рівня всередині пакетів. Міст не знає і не повинен знати, які пакети - IP, IPX або CLNP - містить у полі корисного навантаження кадр,переданий з локальної мережі 802.х до 802.y.

Плутанина відбувається з двох причин. По-перше, щодо функціональності мости і маршрутизатори дуже нагадують один одного. Вони приймають протокольні блоки даних (Protocol Data Unit, PDU), аналізують певні поля заголовка і приймають рішення про те, куди далі передати пакет відповідно до інформації, що міститься в заголовку, і внутрішніми таблицями. По-друге, назви комерційним продуктам даються часто дуже умовні, а, крім того, багато з них поєднують у собі функції тих і інших пристроїв.

МАРШРУТИЗАТОРИ ПРОТИ КОМУТАТОРІВ

В останні кілька років сама необхідність у маршрутизаторах почала ставитися під сумнів, головним чином у зв'язку з появою та розповсюдженням комутаторів (по суті багатопортових мостів). У чому причини того, що користувачі почали встановлювати у своїх мережах комутатори там, де вони раніше використовували маршрутизатори? Ось деякі з них: маршрутизатори в розрахунку на порт коштують набагато дорожче за комутатори; як правило, у порівнянні з комутаторами вони мають набагато меншу сукупну пропускну здатність (пакетів за секунду), функції комутації другого рівня набагато простіше реалізувати апаратним чином, ніж програмним, і т.д.

Тим не менш, комутатори все частіше оснащуються функціями маршрутизаторів, так що, як вважає Девід Пасмор, президент компанії Decisys, "маршрутизатори зникнуть, але маршрутизація залишиться".

ВИСНОВОК

Поділіться матеріалом з колегами та друзями