Технологія Ethernet
Інкапсуляції в пакетних мережах передачі даних Ethernet. Функціональні можливості програмного аналізатора пакетів Wireshark
Семирівнева модель взаємодії відкритих систем OSI/ISO
Щоб спростити розуміння моделі, розглянемо роботу моделі на конкретному прикладі роботи мережі (рис. 1).
Рисунок 1 Приклад роботи мережі
Користувач вводить ім'я сайта. Передбачається, що IP адреса сайта вже відома, тому немає необхідності звертатися до DNS сервера. Web-Браузер формує HTTP-запит. Так відпрацьовують рівні прикладний, представницький і сеансовий рівень.
На транспортному рівні працює протокол TCP. Процесу виділяється локальний порт 1200, вказується відповідний HTTP протоколу порт сервера 80 і здійснюється процедури тристоронньої взаємодії й узгодження розміру вікна передачі з метою встановлення TCP з'єднання.
На мережному рівні додаються IP адреса одержувача й відправника, формується IP пакети й направляється у бік шлюзу (маршрутизатора) відповідно до таблиці маршрутизації користувальницького ПК.
Далі на канальному рівні до пакета додається апаратна MAC-адреса ПК, за допомогою протоколу ARP визначається MAC-адреса одержувача й формується фрейм канального рівня.
На виході Ethernet-адаптера формується сигнал, що подається по кабелю UTP п'ятої категорії на порт комутатора. Комутатор виділяє із сигналу й аналізує отриманий фрейм відповідно до таблиці MAC-адрес і по оптоволокну передає його на порт маршрутизатора.
Маршрутизатор виділяє із фрейму й аналізує IP пакет і перенаправляє його відповідно до таблиці маршрутизації на свій інтерфейс, що ставиться до мережі Web-Сервера. Далі знову працюють функції канального й фізичного рівнів. Одержавши й обробивши інформацію, процес Web-Сервера формує HTTP-відгук і передає його у зворотному напрямку.
Природно, цей опис даний украй спрощено й не повною мірою відбиває всі процедури, що здійснюються на кожному з рівнів. Однак у цьому випадку можна побачити основну перевагу даної моделі.
Технологія Ethernet
Ethernet - це мережний стандарт, заснований на технологіях експериментальної мережі Ethernet Network. Залежно від типу фізичного середовища стандарт IEEE 802.3 має різні модифікації - 10Base-5, 10Base-2, 100Base-T, 100Base-F.
Історично перші мережі технології Ethernet були створені на коаксіальному кабелі діаметром 0.5 дюйма. Пізніше були визначені й інші специфікації фізичного рівня для стандарту Ethernet, що дозволяють використовувати різні середовища передачі даних загальної шини. Метод доступу CSMA/CD і всі тимчасові параметри Ethernet залишаються тими самими для будь-якої специфікації фізичного середовища.
Фізичні специфікації технології Ethernet на сьогоднішній день включають наступні середовища передачі даних:
10Base-5 - коаксіальний кабель діаметром 0.5 дюйма, названий "товстим" коаксіалом. Має хвильовий опір 50 Ом. Максимальна довжина сегмента - 500 метрів (без повторювачів).
10Base-2 - коаксіальний кабель діаметром 0.25 дюйма, названий "тонким" коаксіалом. Має хвильовий опір 50 Ом. Максимальна довжина сегмента - 185 метрів (без повторювачів).
10Base-T - кабель на основі неекранованої витої пари (Unshielded Twisted Pair, UTP). Утворить зіркоподібну топологію з концентратором. Відстань між концентратором і кінцевим вузлом - не більше 100 м.
10Base-F - оптоволоконний кабель. Топологія аналогічна стандарту на витій парі. Є кілька варіантів цієї специфікації - FOIRL, 10Base-FL, 10Base-FB.
Число 10 позначає бітову швидкість передачі даних цих стандартів - 10 Мб/з, а слово Base - метод передачі на одній базовій частоті 10 МГц (на відміну від стандартів, що використовують кілька несучих частот, які називаються broadband - широкосмуговими).
Для передачі двійкової інформації по кабелю для всіх варіантів фізичного рівня технології Ethernet використовується манчестерский код.
Всі види стандартів Ethernet використовують той самий метод поділу середовища передачі даних - метод CSMA/CD.
У мережах Ethernet використовується метод доступу до середовища передачі даних, названий методом колективного доступу із впізнаванням несучої й виявленням колізій (carrier-sense-multiply-access with collision detection, CSMA/CD).
Цей метод використовується винятково в мережах із загальною шиною. Всі комп'ютери такої мережі мають безпосередній доступ до загальної шини, тому вона може бути використана для передачі даних між будь-якими двома вузлами мережі. Простота схеми підключення - це один з факторів, що визначили успіх стандарту Ethernet. Говорять, що кабель, до якого підключені всі станції, працює в режимі колективного доступу (multiply-access, MA).
Всі дані,які передаються по мережі, поміщаються в кадри певної структури й забезпечуються унікальною адресою станції призначення. Потім кадр передається по кабелі. Всі станції, підключені до кабелю, можуть розпізнати факт передачі кадру, і та станція, що довідається власну адресу в заголовках кадру, записує його вміст у свій внутрішній буфер, обробляє отримані дані й посилає по кабелю кадр-відповідь. Адреса станції-джерела також включена у вихідний кадр, тому станція-одержувач знає, кому потрібно послати відповідь.
При описаному підході можлива ситуація, коли дві станції одночасно намагаються передати кадр даних по загальному кабелю. Для зменшення ймовірності цієї ситуації безпосередньо перед відправленням кадру передавальна станція слухає кабель (тобто приймає й аналізує виникаючі на ньому електричні сигнали), щоб виявити, чи не передається вже по кабелю кадр даних від іншої станції. Якщо зорієнтується несуча (carrier-sense, CS), то станція відкладає передачу свого кадру до закінчення чужої передачі, і тільки потім намагається знову його передати. Але навіть при такому алгоритмі дві станції одночасно можуть вирішити, що по шині в цей момент часу немає передачі, і почати одночасно передавати свої кадри. Говорять, що при цьому відбувається колізія, тому що вміст обох кадрів зіштовхується на загальному кабелі, що приводить до перекручування інформації.
Щоб коректно обробити колізію, всі станції одночасно спостерігають за виникаючими на кабелі сигналами. Якщо передані й спостережувані сигнали відрізняються, то фіксується виявлення колізії (collision detection, CD). Для збільшення ймовірності негайного виявлення колізії всіма станціями мережі, ситуація колізії підсилюється посилкою в мережу станціями, що почали передачу своїх кадрів, спеціальної послідовності біт, названою jam-послідовністю.
Після виявлення колізії передавальна станція зобов'язана припинити передачу й очікувати протягом короткого випадкового інтервалу часу, а потім може знову зробити спробу передачі кадру.
З опису методу доступу видно, що він носить імовірнісний характер, і ймовірність успішного одержання у своє розпорядження загального середовища залежить від завантаженості мережі, тобто від інтенсивності виникнення в станціях потреби передачі кадрів.
Метод CSMA/CD визначає основні тимчасові й логічні співвідношення, що гарантують коректну роботу всіх станцій у мережі:
- Між двома послідовно переданими по загальній шині кадрами інформації повинна дотримуватися пауза в 9.6 мкс; ця пауза потрібна для приведення у вихідний стан мережних адаптерів вузлів, а також для запобігання монопольного захоплення середовища передачі даних однією станцією.
- При виявленні колізії (умови її виявлення залежать від застосовуваного фізичного середовища) станція видає в середовище спеціальну 32-х бітову послідовність ( jam-послідовність), що підсилює явище колізії для більш надійного розпізнавання її всіма вузлами мережі.
- Після виявлення колізії кожний вузол, що передавав кадр і зіштовхнувся з колізією, після деякої затримки намагається повторно передати свій кадр. Вузол робить максимально 16 спроб передачі цього кадру інформації, після чого відмовляється від його передачі. Величина затримки вибирається як рівномірно розподілене випадкове число з інтервалу, довжина якого експоненціально збільшується з кожною спробою. Такий алгоритм вибору величини затримки знижує ймовірність колізій і зменшує інтенсивність видачі кадрів у мережу при її високому завантаженні.
Чітке розпізнавання колізій всіма станціями мережі є необхідною умовою коректної роботи мережі Ethernet. Якщо яка-небудь передавальна станція не розпізнає колізію й вирішить, що кадр даний нею переданий вірно, то цей кадр даних буде загублений, тому що інформація кадру спотвориться через накладення сигналів при колізії, він буде відбракований приймаючою станцією (швидше за все через розбіжність контрольної суми). Звичайно, швидше за все перекручена інформація буде повторно передана яким-небудь протоколом верхнього рівня, наприклад, транспортним або прикладним, працюючим із установленням з'єднання й нумерацією своїх повідомлень. Але повторна передача повідомлення протоколами верхніх рівнів відбудеться через набагато більше тривалий інтервал часу (десятки секунд) у порівнянні з мікросекундними інтервалами, якими оперує протокол Ethernet. Тому, якщо колізії не будуть надійно розпізнаватися вузлами мережі Ethernet, те це приведе до помітного зниження корисної пропускної здатності даної мережі.
Всі параметри протоколу Ethernet підібрані таким чином, щоб при нормальній роботі вузлів мережі колізії завжди чітко розпізнавалися. Саме для цього мінімальна довжина поля даних кадру повинна бути не менш 46 байт (що разом зі службовими полями дає мінімальну довжину кадру в 72 байта або 576 біт). Довжина кабельної системи вибирається таким чином, щоб за час передачі кадру мінімальної довжини сигнал колізії встиг би поширитися до самого далекого вузла мережі.
Зі збільшенням швидкості передачі кадрів, що має місце в нових стандартах, що базуються на тім же методі доступу CSMA/CD, наприклад, Fast Ethernet, максимальна довжина мережі зменшується пропорційно збільшенню швидкості передачі. У стандарті Fast Ethernet вона становить 210 м, а в гігабітном Ethernet обмежена 25 метрами.
Незалежно від реалізації фізичного середовища, всі мережі Ethernet повинні задовольняти двом обмеженням, пов'язаним з методом доступу:
- максимальна відстань між двома будь-якими вузлами не повинна перевищувати 2500 м,
- у мережі не повинно бути більше 1024 вузлів.
Крім того, кожний варіант фізичного середовища додає до цих обмежень свої обмеження, які також повинні виконуватися.
Уточнимо основні параметри операцій передачі й прийому кадрів Ethernet, коротко описані вище.
Станція, що хоче передати кадр, повинна спочатку за допомогою MAC-вузла впакувати дані в кадр відповідного формату. Потім для запобігання змішання сигналів із сигналами іншої передавальної станції, MAC-вузол повинен прослуховувати електричні сигнали на кабелі й у випадку виявлення несучої частоти відкласти передачу свого кадру. Після закінчення передачі по кабелю станція повинна вичекати невелику додаткову паузу, названу міжкадровим інтервалом (interframe gap), що дозволяє вузлу призначення прийняти й обробити переданий кадр, і після цього почати передачу свого кадру.
Одночасно з передачею бітів кадру приймально-передавальний пристрій вузла стежить за прийнятими по загальному кабелі бітами, щоб вчасно виявити колізію. Якщо колізія не виявлена, то передається весь кадр, після чого MAC-рівень вузла готовий прийняти кадр із мережі або від LLC-рівня.
Якщо ж фіксується колізія, то MAC-вузол припиняє передачу кадру й посилає jam-послідовність, що підсилює стан колізії. Після посилки в мережу jam-послідовності вузол-MAC-вузол робить випадкову паузу й повторно намагається передати свій кадр.
У випадку повторних колізій існує максимально можливе число спроб повторної передачі кадру (attempt limit), що дорівнює 16. При досягненні цієї межі фіксується помилка передачі кадру, повідомлення про яку передається протоколу верхнього рівня.
Для того, щоб зменшити інтенсивність колізій, кожний MAC-вузол з кожною новою спробою випадковим образом збільшує тривалість паузи між спробами. Тимчасовий розклад тривалості паузи визначається на основі усіченого двійкового експонентного алгоритму відстрочки (truncated binary exponential backoff). Пауза завжди становить ціле число так званих інтервалів відстрочки.
Інтервал відстрочки (slot time) - це час, протягом якого станція гарантовано може довідатися, що в мережі немає колізії. Цей час тісно пов'язаний з іншим важливим тимчасовим параметром мережі - вікном колізій (collision window). Вікно колізій дорівнює часу дворазового проходження сигналу між самими вилученими вузлами мережі - найгіршому випадку затримки, при якій станція ще може виявити, що відбулася колізія. Інтервал відстрочки вибирається рівним величині вікна колізій плюс деяка додаткова величина затримки для гарантії:
інтервал відстрочки = вікно колізій + додаткова затримка
У стандартах 802.3 більшість тимчасових інтервалів виміряється в кількості міжбітових інтервалів, величина яких для бітової швидкості 10 Мб/зі становить 0.1 мкс і дорівнює часу передачі одного біта.
Стандарт на технологію Ethernet, описаний у документі 802.3, дає опис єдиного формату кадру МАС-рівня. Тому що в кадр МАС-рівня повинен вкладатися кадр рівня LLC, описаний у документі 802.2, то по стандартах IEEE у мережі Ethernet може використовуватися тільки єдиний варіант кадру канального рівня, утворений комбінацією заголовків МАС і LLC підрівнів. Проте, на практиці в мережах Ethernet на канальному рівні використовуються заголовки 4-х типів. Це пов'язане із тривалою історією розвитку технології Ethernet до прийняття стандартів IEEE 802, коли підрівень LLC не виділявся із загального протоколу й, відповідно, заголовок LLC не застосовувався. Потім, після прийняття стандартів IEEE і появи двох несумісних форматів кадрів канального рівня, була зроблена спроба приведення цих форматів до деякого загального знаменника, що привело ще до одного варіанта кадру.
Розходження у форматах кадрів можуть іноді приводити до несумісності апаратури, розрахованої на роботу тільки з одним стандартом, хоча більшість мережних адаптерів, мостів і маршрутизаторів уміє працювати з усіма використовуваними на практиці форматами кадрів технології Ethernet.
Заголовок кадру 802.3/LLC є результатом об'єднання полів заголовків кадрів, певних у стандартах 802.3 і 802.2.
Стандарт 802.3 визначає вісім полів заголовка:
Поле преамбули складається із семи байтів синхронізуючих даних. Кожний байт містить ту саму послідовність бітів - 10101010. При манчестерском кодуванні ця комбінація представляється у фізичному середовищі періодичним хвильовим сигналом. Преамбула використовується для того, щоб дати час і можливість схемам приемопередатчиків (transceiver) прийти в стійкий синхронізм із прийнятими тактовими сигналами.
Початковий обмежник кадру складається з одного байта з набором бітів 10101011. Поява цієї комбінації є вказівкою на майбутній прийом кадру.
Адреса одержувача – довжиною 6 байтів ( MAC-адреса одержувача). Перший біт адреси одержувача – це ознака того, є адреса індивідуальним або груповим: якщо 0, то адреса вказує на певну станцію, якщо 1, те це групова адреса декількох (можливо всіх) станцій мережі. При широкомовній адресації всі біти поля адреси встановлюються в 1. Загальноприйнятим є використання 6-байтових адрес.
Адреса відправника – 6-ти байтове поле, що містить адресу станції відправника. Перший біт – завжди має значення 0.
Двухбайтове поле довжини визначає довжину поля даних у кадрі.
Поле даних може містити від 0 до 1500 байт. Але якщо довжина поля менше 46 байт, то використовується наступне поле – поле заповнення, щоб доповнити кадр до мінімально припустимої довжини.
Поле заповнення складається з такої кількості байтів заповнювачів, що забезпечує певну мінімальну довжину поля даних (46 байт). Це забезпечує коректну роботу механізму виявлення колізій. Якщо довжина поля даних достатня, то поле заповнення в кадрі не з'являється.
Поле контрольної суми – 4 байти, що містять значення, що обчислюється по певному алгоритмі (поліному CRC-32). Після одержання кадру робоча станція виконує власне обчислення контрольної суми для цього кадру, порівнює отримане значення зі значенням поля контрольної суми й, таким чином, визначає, чи не перекручений отриманий кадр.
Кадр 802.3 є кадром MAС-підуровня, у відповідності зі стандартом 802.2 у його поле даних вкладається кадр підуровня LLC з вилученими прапорами початку й кінця кадру.
Тому що кадр LLC має заголовок довжиною 3 байти, те максимальний розмір поля даних зменшується до 1497 байт.
Рисунок 2 Формат кадру Ethernet
Кадр стандарту Ethernet DIX, названий також кадром Ethernet II, схожий на кадр Raw 802.3 тим, що він також не використовує заголовки підуровня LLC, але відрізняється тим, що на місці поля довжини в ньому визначене поле типу протоколу (поле Type). Це поле призначене для тих же цілей, що й поля DSAP і SSAP кадру LLC - для вказівки типу протоколу верхнього рівня, що вложили свій пакет у поле даних цього кадру. Для кодування типу протоколу використовуються значення, що перевищують значення максимальної довжини поля даних, рівне 1500, тому кадри Ethernet II і 802.3 легко помітні.
Протокол ARP
Протокол дозволу адрес ARP (Address Resolution Protocol) є обов'язковим стандартом TCP/IP, описаним у документі RFC 826 «Address Resolution Protocol (ARP)». ARP дозволяє IP-адреси, використовувані програмним забезпеченням TCP/IP, в апаратні адреси мережних адаптерів локальної мережі. ARP надає вузлам, розташованим в одній фізичній мережі, наступні служби протоколу.
· Апаратні адреси (або МАС-адреси – адреси рівня керування доступом до середовища передачі) визначаються шляхом посилки широкомовного мережного запиту наступного виду «Яка апаратна адреса має пристрій із зазначеним IP-адресою?»
· Коли на ARP-запит відправляється відповідь, то відправник ARP-відповіді й запитуючий вузол заносять IP-адреси й апаратні адреси один одного в локальну таблицю, названу кешем ARP, для подальшого використання.
ARP-таблиця для перетворення адрес
Перетворення адрес виконується шляхом пошуку в таблиці. Ця таблиця, називана ARP-таблицею, зберігається в пам'яті й містить рядки для кожного вузла мережі. У двох стовпцях утримуються IP- і Ethernet-адреси. Якщо потрібно перетворити IP-адреса в Ethernet-адресу, то шукається запис із відповідної IP-адресою. Нижче наведений приклад спрощеної ARP-таблиці.
Табл.1 Приклад ARP-таблиці
IP-адреса | Ethernet-адреса |
223.1.2.1 223.1.2.3 223.1.2.4 | 08:00:39:00:2F:C3 08:00:5A:21:A7:22 08:00:10:99:AC:54 |
Прийнято всі байти 4-байтної IP-адреси записувати десятковими числами, розділеними крапками. При записі 6-байтної Ethernet-адреси кожний байт вказується в 16-річній системеі і відділяється двокрапкою.
ARP-таблиця необхідна тому, що IP-адреси й Ethernet-адреси вибираються незалежно, і немає якого-небудь алгоритму для перетворення одного в іншій. IP-адреса вибирає менеджер мережі з урахуванням положення машини в мережі internet. Якщо машину переміщають в іншу частину мережі internet, то її IP-адреса повинна бути змінена. Ethernet-адресу вибирає виробник мережного інтерфейсного устаткування з виділеного для нього по ліцензії адресного простору. Коли в машини заміняється плата мережного адаптера, то міняється і її Ethernet-адреса.
Дата добавления: 2016-05-11; просмотров: 4138;