Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Пристрої канального рівня та їх вплив на трафік мережі

До пристроїв, які забезпечують виконання функції канального рівня, відносяться:

Мережева карта (NIC, network interface card), яка вставляється у слот материнської плати вузла і забезпечує його зв’язок з мережевим середовищем. Як правило, вона взаємодіє із мережею через послідовне з’єднання, а з материнською платою вузла – через паралельне. Фактори, які необхідно враховувати при виборі мережевої карти:

- тип мережевого протоколу канального рівня (Ethernet, FDDI, Token Ring);

- тип середовища передачі даних (вита пара, коаксіал, оптоволокно);

- тип системної шини комп’ютера (PCI, ISA).

Функції мережевої карти:

- LLC (управління логічним каналом) завдяки обміну службовою інформацією із протоколами верхніх рівнів;

- naming (адресація) – оскільки вона містить унікальну МАС-адресу вузла і вбудовує її у кадри, які відправляє;

- framing (утворення кадрів) – утворює і відправляє кадри певної структури для передачі;

- signaling (передача сигналів) – генерує сигнали і здійснює інтерфейс з середовищем передачі даних завдяки вбудованому трансиверу.

Міст (bridge) – мережевий пристрій канального рівня, який з’єднує мережеві сегменти та вирішує, чи перенаправляти кадр у інший сегмент. Фільтрація трафіку відбувається на основі МАС-адреси у відповідності до спеціальної таблиці фільтрації. У цій таблиці у відповідність порту моста ставляться МАС-адреси вузлів, які під’єднані до цього порта. При надходженні кадру на вхідний порт перевіряється адреса отримувача вузла; якщо вона відповідає іншому порту моста, кадр передається на цей порт; якщо тому ж, з якого поступив кадр – він відкидається.


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

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

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

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

 

1.6.3.4. Характеристики, що впливають на продуктивність комутаторів.

Продуктивність комутатора — це властивість, яку мережні інтегратори й адміністратори чекають від цього пристрою в першу чергу.

Основними показниками комутатора, що характеризують його продуктивність, є:

• швидкість фільтрації кадрів;

• швидкість просування кадрів;

• пропускна здатність;

• затримка передачі кадру.

Крім того, існує кілька характеристик комутатора, що найбільшою мірою впливають на зазначені характеристики продуктивності. До них відносяться:

• тип комутації — «на льоту» чи з повною буферизацією;

• розмір буфера (буферів) кадрів;

• продуктивність внутрішньої шини;

• продуктивність процесора чи процесорів;

• розмір внутрішньої адресної таблиці.

Швидкість фільтрації і швидкість просування

Швидкість фільтрації і просування кадрів — це дві основні характеристики продуктивності комутатора. Ці характеристики є інтегральними показниками, вони не залежать від того, яким чином технічно реалізований комутатор.

Швидкість фільтрації визначає швидкість, з якою комутатор виконує наступні етапи обробки кадрів:

• прийом кадру до свого буфера;

• перегляд адресної таблиці з метою знаходження порту для адреси призначення кадру;

• знищення кадру, тому що його порт призначення і порт джерела належать одному логічному сегменту.

Швидкість фільтрації практично у всіх комутаторів є неблокуючою — комутатор устигає відкидати кадри в темпі їхнього надходження.

Швидкість просування визначає швидкість, з якою комутатор виконує наступні етапи обробки кадрів.

· прийом кадру до свого буфера;

· перегляд адресної таблиці з метою визначення порту для адреси призначення кадру;

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

Як швидкість фільтрації, так і швидкість просування виміряються звичайно в кадрах у секунду. Якщо в характеристиках комутатора не уточнюється, для якого протоколу і для якого розміру кадру приведені значення швидкостей фільтрації і просування, то за замовчуванням вважається, що ці показники даються для протоколу Ethernet і кадрів мінімального розміру, тобто кадрів довжиною 64 байт (без преамбули) з полем даних у 46 байт. Якщо швидкості зазначені для якого-небудь визначеного протоколу, наприклад Token Ring чи FDDI, то вони також дані для кадрів мінімальної довжини цього протоколу (наприклад, кадрів довжини 29 байт для протоколу FDDI). Застосування як основного показника швидкості роботи комутатора кадрів мінімальної довжини пояснюється тим, що такі кадри завжди створюють для комутатора найбільш важкий режим роботи у порівнянні з кадрами іншого формату при рівній пропускній здатності користувальницьких даних, що переносяться. Тому при проведенні тестування комутатора режим передачі кадрів мінімальної довжини використовується як найбільш складний тест, що повинний перевірити здатність комутатора працювати при найгіршому сполученні параметрів трафіку. Крім того, для пакетів мінімальної довжини швидкість фільтрації і просування максимальна, що має немаловажне значення при рекламі комутатора.

Пропускна здатність комутатора виміряється кількістю користувальницьких даних (у мегабітах у секунду), переданих в одиницю часу через його порти. Оскільки комутатор працює на канальному рівні, для нього користувальницькими даними є ті дані, що переносяться в полі даних кадрів протоколів канального рівня — Ethernet, Token Ring, FDDI і т.п. Максимальне значення пропускної здатності комутатора завжди досягається на кадрах максимальної довжини, тому що при цьому частка накладних витрат на службову інформацію кадру набагато нижче, ніж для кадрів мінімальної довжини, а час виконання комутатором операцій по обробці кадру, що приходиться на один байт користувальницької інформації, істотно менше. Тому комутатор може бути, блокуючим для кадрів мінімальної довжини, але при цьому мати дуже гарні показники пропускної здатності.

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

Величина внесеної комутатором затримки залежить від режиму його роботи. Якщо комутація здійснюється «на льоту», то затримки звичайно невеликі і складають від 5 до 40 мкс, а при повній буферизації кадрів — від 50 до 200 мкс (для кадрів мінімальної довжини).

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

На продуктивності комутатора позначається спосіб передачі пакетів — «на льоту (cut-through)» чи з буферизацією (store-and-forward). При комутації „на льоту” комутатор зчитує лише адресу отримувача кадру і одразу ж починає передавати його на вихідний порт, не очікуючи прийому всього кадру. При комутації з буферизацією пристрій очікує отримання всього кадру, перевіряє контрольну суму і лише тоді починає передавати кадр на вихідний порт. Існує ще один різновид такою комутації – з частковою буферизацією (fragment-free). При цьому методі комутатор зчитує перші 64 байти кадру і передає його на вихідний порт. Комутатори, що передають пакети «на льоту», вносять менші затримки передачі кадрів на кожнім проміжному комутаторі, тому загальне зменшення затримки доставки даних може бути значним, що важливо для мультимедійного трафіку. Крім того, обраний спосіб комутації впливає на можливості реалізації деяких корисних додаткових функцій, наприклад трансляцію протоколів канального рівня.

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

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

Оскільки кожен спосіб має свої переваги і недоліки, у тих моделях комутаторів, яким не потрібно транслювати протоколи, іноді застосовується механізм адаптивної зміни режиму роботи комутатора. Основний режим такого комутатора — комутація «на льоту», але комутатор постійно контролює трафік і при перевищенні інтенсивності появи поганих кадрів деякого порога переходить на режим повної буферизації. Потім комутатор може повернутися до комутації «на льоту».

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

Значення максимального числа МАС-адрес, що може запам'ятати процесор порту, залежить від області застосування комутатора. Комутатори робочих груп звичайно підтримують усього кілька адрес на порт, тому що вони призначені для утворення мікросегментів. Комутатори відділів повинні підтримувати кілька сотень адрес, а комутатори магістралей мереж — до декількох тисяч, звичайно 4000-8000 адрес.

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

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

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

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

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

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

1.6.3.5. Алгоритм Spanning Tree.

Алгоритм покриваючого дерева — Spanning Tree Algorithm (STA) дозволяє комутаторам автоматично визначати деревоподібну конфігурацію зв'язків у мережі при довільному з'єднання портів між собою. Як уже відзначалося, для нормальної роботи комутатора потрібна відсутність замкнутих маршрутів у мережі. Ці маршрути можуть створюватися адміністратором спеціально для утворення резервних зв'язків чи виникати випадковим чином, що цілком можливо, якщо мережа має численні зв'язки, а кабельна система погано структурована чи документована.

Підтримуючі алгоритм STA комутатори автоматично створюють активну деревоподібну конфігурацію зв'язків (тобто зв'язну конфігурацію без петель) на безлічі всіх зв'язків мережі. Така конфігурація називається покриваючим деревом — Spanning Tree (іноді її називають основним деревом), і її назва дала ім'я всьому алгоритму. Алгоритм Spanning Tree описаний у стандарті ІЕЕЕ 802.1D, тім же стандарті, що визначає принципи роботи прозорих мостів.

Комутатори знаходять покриваюче дерево адаптивно, за допомогою обміну службовими пакетами. Реалізація в комутаторі алгоритму STA дуже важлива для роботи у великих мережах — якщо комутатор не підтримує цей алгоритм, то адміністратор повинний самостійно визначити, які порти потрібно перевести в заблокований стан, щоб виключити петлі. До того ж при відмовленні якого-небудь кабелю, чи порту комутатора адміністратор повинний, по-перше, знайти факт відмовлення, а по-друге, ліквідувати наслідок відмовлення, перевівши резервний зв'язок у робочий режим шляхом активізації деяких портів. За підтримки комутаторами мережі протоколу Spanning Tree відмовлення виявляються автоматично, за рахунок постійного тестування зв’язності мережі службовими пакетами. Після виявлення утрати зв’язності протокол будує нове покриваюче дерево, якщо це можливо, і мережа автоматично відновлює працездатність.

Алгоритм Spanning Tree визначає активну конфігурацію мережі за три етапи. Спочатку в мережі визначається кореневий комутатор (root switch), від якого будується дерево. Кореневий комутатор може бути обраний автоматично чи призначений адміністратором. При автоматичному виборі кореневим стає комутатор з меншим значенням МАС-адреси його блоку керування.

Потім, на другому етапі, для кожного комутатора визначається кореневий порт (root port) — це порт, що має по мережі найкоротшу відстань до кореневого комутатора (точніше, до кожного з портів кореневого комутатора).

І нарешті, на третьому етапі для кожного сегмента мережі вибирається так званий призначений порт (designated port) — це порт, що має найкоротшу відстань від даного сегмента до кореневого комутатора. Після визначення кореневих і призначених портів кожен комутатор блокує інші порти, що не потрапили в ці два класи портів. Можна математично довести, що при такому виборі активних портів у мережі виключаються петлі і зв'язки, що залишилися, утворять покриваюче дерево (якщо воно може бути побудоване при існуючих зв'язках у мережі).

Поняття відстані відіграє важливу роль у побудові покриваючого дерева. Саме за цим критерієм вибирається єдиний порт, що з'єднує кожен комутатор з кореневим комутатором, і єдиний порт, що з'єднує кожен сегмент мережі з кореневим комутатором.

Відстань до кореня визначається як сумарний умовний час на передачу одного біта даних від порту даного комутатора до порту кореневого комутатора. При цьому вважається, що час внутрішніх передач даних (з порту на порт) комутатором незначним, а враховується тільки час на передачу даних по сегментах мережі, що з'єднує комутатори. Умовний час сегмента розраховується як час, затрачуваний на передачу одного біта інформації в 10 наносекундних одиницях між безпосередньо зв'язаними по сегменту мережі портами. Так, для сегмента Ethernet цей час дорівнює 10 умовним одиницям, а для сегмента Token Ring 16 Мбіт/с — 6,25. (Алгоритм SТА не зв'язаний з яким-небудь визначеним стандартом канального рівня, він може застосовуватися до комутаторів, що з'єднують мережі різних технологій.)

Для автоматичного визначення початкової активної конфігурації дерева всі комутатори мережі після їхньої ініціалізації починають періодично обмінюватися спеціальними пакетами, називаними протокольними блоками даних моста — ВРDU (Bridge Protocol Data Unit), що відбиває факт первісної розробки алгоритму SТА для мостів.

Пакети ВРDU містяться в полі даних кадрів канального рівня, наприклад кадрів Ethernet чи FDDI. Бажано, щоб усі комутатори підтримували загальну групову адресу, за допомогою якої кадри, що містять пакети ВРDU, могли б одночасно передаватися всім комутаторам мережі. Інакше пакети ВРDU розсилаються широкомовно.

Ідентифікатори комутаторів (Root ID) складаються з 8 байт, причому молодші 6 є МАС-адресою блоку керування комутатора. Старші 2 байти у вихідному стані заповнені нулями, але адміністратор може змінити значення цих байтів, тим самим призначивши визначений комутатор кореневим.

Після ініціалізації кожен комутатор спочатку вважає себе кореневим. Тому він починає через певний інтервал генерувати через усі свої порти повідомлення ВРDU конфігураційного типу. У них він указує свій ідентифікатор як ідентифікатор кореневого комутатора (і як ідентифікатор даного комутатора також), відстань до кореня встановлюється в 0, а як ідентифікатор порту вказується ідентифікатор того порту, через який передається ВРDU. Як тільки комутатор одержує ВРDU, у якому є ідентифікатор кореневого комутатора, зі значенням, меншим його власного, він перестає генерувати свої власні кадри ВРDU, а починає ретранслювати тільки кадри нового претендента на звання кореневого комутатора..

При ретрансляції кадрів кожен комутатор нарощує відстань до кореня, зазначену в отриманих ВРDU, на умовний час сегмента, по якому прийнятий даний кадр. Тим самим у кадрі ВРDU, у міру проходження через комутатори, накопичується відстань до кореневого комутатора.

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

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

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

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

У процесі нормальної роботи кореневий комутатор продовжує генерувати службові кадри ВРDU, а інші комутатори продовжують їх приймати своїми кореневими портами і ретранслювати призначеними. Якщо в комутатора немає призначених портів, то вони все рівно продовжують брати участь у роботі протоколу Spanning Tree, приймаючи службові кадри кореневим портом. Якщо після закінчення тайм-ауту кореневий порт будь-якого комутатора мережі не одержує службовий кадр ВРDU, то він ініціалізує нову процедуру побудови покриваючого дерева, сповіщаючи про це інші комутатори ВРDU- повідомленнями про реконфігурацію. Одержавши такий кадр, усі комутатори починають знову генерувати ВРDU конфігураційного типу, у результаті чого встановлюється нова активна конфігурація.

Під час роботи протоколу Spanning Tree кожен порт комутатора може знаходитися у одному з наступних режимів:

· блокування (blocking) – не передається ніяка інформація, приймаються службові кадри (BPDU)

· прослуховування (listening) – інформація не передається, а лише приймається

· вивчення (learning) – інформація не передається, вивчаються адреси

· перенаправлення (forwarding) – передається інформація, вивчаються адреси

· відключення (disabled) – жодна інформація не передається і не приймається

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


<== предыдущая лекция | следующая лекция ==>
Поняття домену колізій та широкомовного домену | Методи доступу до середовища
Поделиться с друзьями:


Дата добавления: 2014-01-07; Просмотров: 2491; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.034 сек.