Вплив на продуктивність мережі типу комунікаційного протоколу і його параметрів

Матеріал з Вікі ЦДУ
Перейти до: навігація, пошук

Завдання вибору комунікаційних протоколів може вирішуватися відносно незалежно для канального рівня із одного боку (Ethernet, TokenRing, FDDI, FastEthernet, ATM) і пари "мережевий - транспортний протокол" з іншого боку(IPX/SPX, TCP/IP, NetBIOS).

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

  • максимально припустимий розмір кадру,
  • величини тайм-аутів (у тому числі час життя пакета),
  • для протоколів, із встановленням сполук - розмір вікна непідтверджених пакетів, а також деяких інших.

Номінальна та ефективна пропускна здатність протоколу

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

Розглянемо докладніше різницю між номінальною та ефективною пропускною здатністю на прикладі протоколу Ethernet.

На малюнку 2.1 наведена тимчасова діаграма передачі кадрів Ethernet мінімальної довжини. Номінальна пропускна здатність протоколу Ethernet становить 10 Мб/с, що означає, що біти всередині кадру передаються з інтервалом в 0.1 мкс. Кадр з 8 байт преамбули, 14 байт службової інформації - заголовка, 46 байт користувацьких даних і 4 байт контрольної суми, всього - 72 байта чи 576 біт. При номінальній пропускній здатності 10 Мб/c час передачі одного кадру мінімальної довжини становить 57.6 мкс.


2.1.jpg


Мал. 2.1. Часова діаграма передачі кадрів Ethernet

За стандартом між кадрами повинна витримуватися технологічна пауза в 9.6 мкс. Тому період повторення кадрів складає 57.6 + 9.6 = 67.2 мкс. Звідси ефективна пропускна спроможність протоколу Ethernet при використовуванні кадрів мінімальної довжини складає 46 х 8/67.2 = 5.48 Мб/с.

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

Ефективна пропускна спроможність істотно відрізняється від номінальної пропускної спроможності протоколу, що говорить про необхідність орієнтації саме на ефективну пропускну спроможність при виборі типу протоколу для того або іншого сегменту мережі. Наприклад, для протоколу Ethernet ефективна пропускна спроможність складає приблизно 70% від номінальної, а для протоколу FDDI - близько 90%.

Пропускна спроможність протоколу часто вимірюється і в кількості кадрів, переданих в секунду. неважко підрахувати, що для протоколу Ethernet ця характеристика для кадрів мінімальної довжини складає 14880 К/с. Зрозуміло, що при вимірюванні пропускної спроможності в кадрах в секунду, немає змісту розмежовувати номінальну і ефективну пропускну спроможність.

Майже всі протоколи канального рівня локальних мереж підтримують одну фіксовану номінальну пропускну спроможність: Ethernet - 10 Мб/с, TokenRing - 16 Мб/с (4 Мб/с може підтримуватися для сумісності із старим устаткуванням), FDDI, FastEthernet і 100VG-AnyLAN - 100 Мб/с. Тільки протокол АТМ може працювати з різними номінальними бітовими швидкостями - 25, 155 і 622 Мб/с, хоча перехід від однієї швидкості до іншої вимагає заміни мережних адаптерів або інтерфейсів комутаторів або маршрутизаторів.

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

Вплив на продуктивність алгоритму доступу до середовища, що розділяється, і коефіцієнта використання

Час доступу до середовища визначається як логікою самого протоколу, так і ступенем завантаженості мережі. В локальних мережах поки домінують середовища передачі даних, що розділяються, які вимагають виконання певної процедури для отримання права передачі кадру. В протоколах Ethernet і FastEthernet використовується алгоритм випадкового доступу з виявленням колізій CSMA/CD, а в протоколах TokenRing і FDDI - алгоритм, заснований на детермінованій передачі токена доступу. Новий стандарт 100VG-AnyLAN використовує алгоритм доступу DemandPriority, при якому рішення про надання доступу ухвалюється центральним елементом, - концентратором.

Час доступу до середовища складається з номінального часу доступу і часу очікування доступу. Номінальний час доступу визначається як час доступу до незавантаженого середовища, коли вузол не конкурує з іншими вузлами. Номінальний час доступу до незайнятого середовища протоколів TokenRing і FDDI в 5 - 10 разів перевищує відповідний час протоколу Ethernet, оскільки в незайнятій мережі Ethernet станція практично миттєво дістає доступ, а в мережі TokenRing вона повинна дочекатися приходу маркера доступу.

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

Найбільш чутливий до завантаженості середовища метод доступу протоколу Ethernet, для якого різке зростання часу очікування починається вже при величинах коефіцієнта використання в 30% - 50%. Тому для нормальної роботи мережі сегменти Ethernet не рекомендується навантажувати понад 30% (мал. 2.2). Навіть якщо середнє значення коефіцієнта використання знаходиться в нормі, але є пікові значення, що перевищують 60%, то це є свідченням того, що мережа працює ненормально і вимагає проведення додаткових досліджень.

2.2.jpg

Мал. 2.2. Характеристики пропускної спроможності мережі Ethernet

Мережі TokenRing і FDDI можна експлуатувати і при великих значеннях коефіцієнта використання - до 60%, а іноді і до 80%. Компанія Hewlett-Packard, що просуває на ринок технологію 100VG-AnyLAN, вважає, що ці мережі можуть нормально працювати і при завантаженні в 95%.

На малюнку 2.3 поміщені графіки залежності середнього часу очікування доступу до середовища для протоколів Ethernet і TokenRing від коефіцієнта використання мережі. Графіки показують, що при близькому загальному характері залежності різке зростання часу очікування наступає в мережах Ethernet набагато раніше, ніж в мережах TokenRing.


2.3.jpg


Мал. 2.3. Порівняння затримок доступу до середовища в мережах Ethernet і TokenRing

2.1.3. Вплив розміру кадру і пакету на продуктивність мережі

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

Загальна довжина кадру разом з преамбулою, заголовком і контрольною сумою складе в цьому випадку 8+14+1500+4 = 1526 байт або 12208 біт. Час передачі такого кадру складе 1220.8 мкс, а період повторення кадрів - 1220.8 +9.6 = 1230.4 мкс.

Ефективна пропускна спроможність при цьому рівна (1500 х 8)/1230.4 = 9.75 Мб/с.

Отриманий результат говорить про те, що при збільшенні розміру пакету ефективна пропускна спроможність протоколу Ethernet істотно, майже в 2 рази, збільшилася - з 5.48 Мб/с до 9.75 Мб/с (мал. 2.2). Аналогічне зростання характерне для всіх протоколів і це говорить про те, що розмір пакету - один з тих параметрів, які найбільшою мірою впливають на продуктивність мережі.

Розмір пакету конкретного протоколу звичайно обмежений максимальним значенням поля даних (MaximumTransferUnit, MTU), визначеним в стандарті на протокол.

Протоколи локальних мереж мають наступні значення MTU: Ethernet, Fast Ethernet - 1500 байт; TokenRing 16 - 16 Кбайт (звичайно за умовчанням встановлюється значення 4K, але його можна збільшити); FDDI - 4Kбайта; 100VG-AnyLAN - 1500 байт при використовуванні кадрів Ethernet і 16K при використовуванні кадрів TokenRing; ATM - 48 байт.

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

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

Максимальний розмір пакету тільки створює передумови для підвищення пропускної спроможності, оскільки від додатків залежить, чи буде використана дана максимальна величина поля даних чи ні. Якщо, наприклад, додаток веде роботи з базою даних і пересилає на сервер SQL-запити, одержуючи у відповідь по одному короткому запису, то максимальний розмір поля даних в 4 або 16 Кбайт ніяк не допоможе підвищити пропускну спроможність мережі. При зверненні ж додатку до файлового серверу для пересилки мультимедійного файлу розміром в декілька мегабайт наявність можливості пересилати файл частинами по 16К безумовно підвищить пропускну спроможність мережі в порівнянні з варіантом пересилки файлу частинами по 1500 байт.

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

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

2.1.4. Призначення максимального розміру кадру в гетерогенній мережі

Продуктивність мережі може різко впасти через неузгодженість максимального розміру кадру в різних частинах складової гетерогенної мережі (мал. 2.4).

Якщо в кожній з частин такої мережі використовується свій протокол канального рівня зі своїм значенням MTU, то проблема узгодження різних значень MTU може виникнути при передачі кадрів з мережі із великим значенням MTU в мережу з меншим значенням MTU. Наприклад, при передачі кадру розміром в 2048 байт з мережі FDDI в мережу Ethernet поле даних кадру FDDI не поміщається в полі даних кадру Ethernet, максимальний розмір якого рівний 1500 байт.

Всі існуючі протоколи канального рівня локальних мереж не передбачають можливості динамічної фрагментації кадрів з подальшою їх збіркою в початковий кадр. Функції фрагментації пакетів реалізовані тільки в протоколах мережного рівня, і то не у всіх - з найпоширеніших протоколів мережного рівня тільки протокол IP підтримує функцію динамічної фрагментації. Тому при передачі кадрів між мережами з різними значеннями MTU проблему, яка виникає, можна розв'язати двома способами - або шляхом використання IP-маршрутизатора, який фрагментуватиме IP-пакети так, щоб вони уміщалися в MTU канального протоколу (мал.2.4б), або шляхом обмеження MTU у всіх складових мережах до значення, рівного мінімальному MTU по всьому набору протоколів, які використовуються в гетерогенній мережі (мал. 2.4в). В наведеному прикладі для цього адміністратора необхідно встановити у всіх мережах максимальний розмір MTU, рівний MTU мереж Ethernet, тобто 1500 байт.

2.4.jpg

Мал. 2.4. Проблема узгодження максимального розміру кадрів в гетерогенній мережі

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

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

В мережі Internet для зменшення перевантажень адміністратори також почали широко застосовувати подібну техніку. Замість динамічної фрагментації використовується попередня процедура з'ясування мінімального значення MTU уздовж маршруту проходження пакетів до серверу призначення. Ця процедура полягає в наступному. Пакети IP, що використовуються в процедурі визначення MTU, відправляються зі встановленим значенням ознаки DF (Don'tFragment), яка забороняє маршрутизаторам фрагментувати даний пакет навіть при неможливості інкапсулювати його в кадр канального рівня чергової мережі. У такому разі маршрутизатори повертають вузлу-відправнику повідомлення по протоколу ICMP "Потрібна фрагментація, а біт DF встановлений". Вузол-відправник, отримавши таке повідомлення повинен зменшити розмір пакету, що відправляється, і знов спробувати передати його вузлу призначення зі встановленим бітом DF, і так до тих пір, поки повідомлення про неможливість доставки не перестануть приходити від маршрутизаторів, що знаходяться на шляху проходження. Після цього вузол-відправник може почати передачу даних кадрами такого розміру, який не вимагає фрагментації ні в одній з складових мереж. Така техніка, звана PathMTUDiscovery (дослідження MTU на шляху проходження), прийнята як стандартна в новій версії протоколу IP - IPv6, з метою звільнення маршрутизаторів від додаткової роботи по фрагментації.

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