- •Еталонна модель osi
- •Рівні моделі osi
- •Мережева модель tcp/ip
- •Загальна структура мережі з точки зору протокольного стеку Багаторівневий підхід. Протокол. Інтерфейс. Стек протоколів Загальна структура мережі з точки зору протокольного стеку
- •Багаторівневий підхід. Протокол. Інтерфейс. Стек протоколів
- •«Налаштування та параметри arp, dns, dhcp серверів»
Рівні моделі osi
Фізичний рівень
Фізичний рівень (Physical layer) має справу з передачею бітів по фізичних каналах зв'язку, таким, наприклад, як коаксіальний кабель, кручена пара, оптоволоконний кабель чи цифровий територіальний канал. До цього рівня мають відношення характеристики фізичних середовищ передачі даних, такі як смуга пропускання, перешкодостійкість, хвильовий опір і інші. На цьому ж рівні визначаються характеристики електричних сигналів, що передають дискретну інформацію, наприклад, крутість фронтів імпульсів, рівні напруги чи струму переданого сигналу, тип кодування, швидкість передачі сигналів. Крім цього, тут стандартизуються типи роз’ємів і призначення кожного контакту.
Функції фізичного рівня реалізуються у всіх пристроях, підключених до мережі. З боку комп'ютера функції фізичного рівня виконуються мережним адаптером чи послідовним портом.
Канальний рівень
На фізичному рівні просто пересилаються біти. При цьому не враховується, що в деяких мережах, у яких лінії зв'язку використовуються (розділяються) поперемінно декількома парами взаємодіючих комп'ютерів, фізичне середовище передачі може бути зайняте. Тому однією з задач канального рівня (Data Link layer) є перевірка доступності середовища передачі. Іншою задачею канального рівня є реалізація механізмів виявлення і корекції помилок. Для цього на канальному рівні біти групуються в набори, називані кадрами (frames). Канальний рівень забезпечує коректність передачі кожного кадру, поміщаючи спеціальну послідовність біт у початок і кінець кожного кадру, для його виділення, а також обчислює контрольну суму, обробляючи всі байти кадру визначеним способом і додаючи контрольну суму до кадру. Коли кадр приходить по мережі, одержувач знову обчислює контрольну суму отриманих даних і порівнює результат з контрольною сумою з кадру. Якщо вони збігаються, кадр вважається правильним і приймається. Якщо ж контрольні суми не збігаються, то фіксується помилка. Канальний рівень може не тільки виявляти помилки, але і виправляти їх за рахунок повторної передачі ушкоджених кадрів. Необхідно відзначити, що функція виправлення помилок не є обов'язковою для канального рівня, тому в деяких протоколах цього рівня вона відсутня, наприклад, у Ethernet і frame relay.
У протоколах канального рівня, використовуваних у локальних мережах, закладена визначена структура зв'язків між комп'ютерами і способами їхньої адресації. Хоча канальний рівень і забезпечує доставку кадру між будь-якими двома вузлами локальної мережі, він це робить тільки в мережі з визначеною топологією зв'язків, саме тією топологією, для якої він був розроблений
Мережевий рівень
Мережевий рівень (Network layer) служить для утворення єдиної транспортної системи, що поєднує кілька мереж, причому ці мережі можуть використовувати зовсім різні принципи передачі повідомлень між кінцевими вузлами і мати довільну структуру зв'язків.
Протоколи канального рівня локальних мереж забезпечують доставку даних між будь-якими вузлами тільки в мережі з відповідної типовою топологією, наприклад топологією ієрархічної зірки. Це дуже тверде обмеження, що не дозволяє будувати мережі з розвинутою структурою, наприклад, мережі, що поєднують кілька мереж підприємства в єдину мережу, чи високонадійні мережі, у яких існують надлишкові зв'язки між вузлами. Можна було б ускладнювати протоколи канального рівня для підтримки петлеподібних надлишкових зв'язків, але принцип поділу обов'язків між рівнями приводить до іншого рішення. Щоб з однієї сторони зберегти простоту процедур передачі даних для типових топологій, а з іншої допустити використання довільних топологій, вводиться мережний рівень.
На мережному рівні сам термін мережу наділяють специфічним значенням. У даному випадку під мережею розуміється сукупність комп'ютерів, з'єднаних між собою відповідно до однієї зі стандартних типових топологій і використовують для передачі даних один із протоколів канального рівня, визначений для цієї топології.
Усередині мережі доставка даних забезпечується відповідним канальним рівнем, а от доставкою даних між мережами займається мережний рівень, що і підтримує можливість правильного вибору маршруту передачі повідомлення навіть у тому випадку, коли структура зв'язків між складовими мережами має характер, відмінний від прийнятого в протоколах канального рівня. Мережі з'єднуються між собою спеціальними пристроями, називаними маршрутизаторами. Маршрутизатор - це пристрій, що збирає інформацію про топологію міжмережевих з'єднань і на її підставі пересилає пакети мережного рівня в мережу призначення. Щоб передати повідомлення від відправника, що знаходиться в одній мережі, одержувачу, що знаходиться в іншій мережі, потрібно зробити деяка кількість транзитних передач між мережами, чи хопів (від hop - стрибок), щораз вибираючи придатний маршрут. Таким чином, маршрут являє собою послідовність маршрутизаторів, через які проходить пакет.
Проблема вибору найкращого шляху називається маршрутизацією, і її рішення є однією з головних задач мережного рівня. Ця проблема ускладнюється тим, що самий короткий шлях не завжди найкращий. Часто критерієм при виборі маршруту є час передачі даних по цьому маршруті; воно залежить від пропускної здатності каналів зв'язку й інтенсивності трафіка, що може змінюватися з часом. Вибір маршруту може здійснюватися і за іншими критеріями, наприклад надійності передачі.
Мережний рівень вирішує також задачі узгодження різних технологій, спрощення адресації у великих мережах і створення надійних і гнучких бар'єрів на шляху небажаного трафіка між мережами.
Повідомлення мережевого рівня прийнято називати пакетами (packets). При організації доставки пакетів на мережному рівні використовується поняття «номер мережі». У цьому випадку адреса одержувача складається зі старшої частини - номера мережі і молодшої - номера вузла в цій мережі. Усі вузли однієї мережі повинні мати ту саму старшу частину адреси, тому терміну «мережа» на мережному рівні можна дати й інше, більш формальне визначення: мережа - це сукупність вузлів, мережна адреса яких містить той самий номер мережі.
На мережевому рівні визначаються два види протоколів. Перший вид - мережні протоколи (routed protocols) - реалізують просування пакетів через мережу. Саме ці протоколи звичайно мають на увазі, коли говорять про протоколи мережевого рівня. Однак часто до мережевого рівня відносять і інший вид протоколів, називаних протоколами обміну маршрутною інформацією чи просто протоколами маршрутизації (routing protocols). За допомогою цих протоколів маршрутизатори збирають інформацію про топологію міжмережевих з'єднань. Протоколи мережевого рівня реалізуються програмними модулями операційної системи, а також програмними й апаратними засобами маршрутизаторів.
На мережевому рівні працюють протоколи ще одного типу, що відповідають за відображення адреси вузла, використовуваного на мережевому рівні, у локальна адреса мережі. Такі протоколи часто називають протоколами дозволу адрес - Address Resolution Protocol, ARP. Іноді їх відносять не до мережного рівня, а до канального, хоча тонкості класифікації не змінюють їхньої суті. Прикладами протоколів мережного рівня є протокол міжмережевої взаємодії IP.
Транспортний рівень
На шляху від відправника до одержувача пакети можуть бути перекручені чи загублені. Хоча деякі додатки мають власні засоби обробки помилок, існують і такі, котрі воліють відразу мати справа з надійним з'єднанням. Транспортний рівень (Transport layer) забезпечує додаткам чи верхнім рівням стека - прикладному і сеансовому - передачу даних з тим ступенем надійності, що їм потрібно. Модель OSI визначає п'ять класів сервісу, наданих транспортним рівнем. Ці види сервісу відрізняються якістю наданих послуг: терміновістю, можливістю відновлення перерваного зв'язку, наявністю засобів мультиплексування декількох з'єднань між різними прикладними протоколами через загальний транспортний протокол, а головне - здатністю до виявлення і виправлення помилок передачі, таких як перекручування, втрата і дублювання пакетів.
Вибір класу сервісу транспортного рівня визначається, з одного боку, тим, у якому ступені задача забезпечення надійності зважується самими додатками і протоколами більш високих, чим транспортний, рівнів, а з іншого боку, цей вибір залежить від того, наскільки надійною є система транспортування даних у мережі, забезпечувана рівнями, розташованими нижче транспортного - мережевим, канальним і фізичним. Так, наприклад, якщо якість каналів передачі зв'язку дуже висока і ймовірність виникнення помилок, не виявлених протоколами більш низьких рівнів, невелика, то розумно скористатися одним з полегшених сервісів транспортного рівня, не обтяжених численними перевірками, квитуванням і іншими прийомами підвищення надійності. Якщо ж транспортні засоби нижніх рівнів дуже ненадійні, то доцільно звернутися до найбільш розвитого сервісу транспортного рівня, використовуючи максимум засобів для виявлення й усунення помилок, - за допомогою попереднього встановлення логічного з'єднання, контролю доставки повідомлень по контрольних сумах і циклічній нумерації пакетів, установлення тайм-аутів доставки і т.п.
Як правило, усі протоколи, починаючи з транспортного рівня і вище, реалізуються програмними засобами кінцевих вузлів мережі - компонентами їх мережних операційних систем. Як приклад транспортних протоколів можна привести протоколи TCP і UDP стека TCP/IP і протокол SPX стека Novell. Протоколи нижніх чотирьох рівнів узагальнено називають мережевим транспортом чи транспортною підсистемою, тому що вони цілком вирішують задачу транспортування повідомлень із заданим рівнем якості в складених мережах з довільною топологією і різними технологіями. Інші три верхніх рівні вирішують задачі надання прикладних сервісів на підставі наявної транспортної підсистеми.
Сеансовий рівень
Сеансовий рівень (Session layer) забезпечує керування діалогом: фіксує, яка зі сторін є активною в даний момент, надає засоби синхронізації. Останні дозволяють вставляти контрольні точки в довгі передачі, щоб у випадку відмови можна було повернутися назад до останньої контрольної точки, а не починати усе з початку. На практиці деякі додатки використовують сеансовий рівень, і він рідко реалізується у виді окремих протоколів, хоча функції цього рівня часто поєднують з функціями прикладного рівня і реалізують в одному протоколі.
Представницький рівень
Представницький рівень (Presentation layer) має справу з формою представлення переданої по мережі інформації, не змінюючи при цьому її змісту. За рахунок рівня представлення інформація, передана прикладним рівнем однієї системи, завжди зрозуміла прикладному рівню іншої системи. За допомогою засобів даного рівня протоколи прикладних рівнів можуть перебороти синтаксичні розходження в представленні даних розходження чи в кодах символів, наприклад кодів ASCII і EBCDIC. На цьому рівні може виконуватися шифрування і дешифрування даних, завдяки якому таємність обміну даними забезпечується відразу для всіх прикладних служб. Прикладом такого протоколу є протокол Secure Socket Layer (SSL), що забезпечує секретний обмін повідомленнями для протоколів прикладного рівня стека TCP/IP.
Прикладний рівень
Прикладний рівень (Application layer) - це в дійсності просто набір різноманітних протоколів, за допомогою яких користувачі мережі одержують доступ до поділюваних ресурсів, таким як файли, принтери чи гіпертекстові Web-сторінки, а також організують свою спільну роботу, наприклад, за допомогою протоколу електронної пошти. Одиниця даних, який оперує прикладний рівень, звичайно називається повідомленням (message).
Існує дуже велика розмаїтість служб прикладного рівня. Наведемо як приклад хоча б трохи найбільш розповсюджені реалізації файлових служб: NCP в операційній системі
