Рівні моделі OSI: Вступний посібник

Розуміння моделі взаємодії відкритих систем (OSI)

Модель Open System Interconnect (OSI) слугує своєрідним посібником для розробників і постачальників програмного забезпечення, допомагаючи їм створювати сумісні та захищені програмні рішення.

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

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

Знання рівнів моделі OSI дозволяє аналізувати технічні вразливості та ризики, пов’язані з різними програмами та системами. Це також допомагає командам визначати місцезнаходження даних, розрізняти фізичний доступ та формувати відповідні політики безпеки.

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

Що таке модель OSI?

Модель Open System Interconnect (OSI) – це еталонна концепція, що складається із семи рівнів, які використовуються комп’ютерними системами та програмами для налагодження зв’язку через мережу.

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

Рівні моделі OSI

Розроблена Міжнародною організацією зі стандартизації (ISO) у 1984 році, модель OSI стала першим стандартом, що визначає, як системи повинні взаємодіяти в мережі. Ця модель була прийнята усіма провідними компаніями в галузі телекомунікацій та комп’ютерних технологій.

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

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

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

Навіщо вивчати модель OSI?

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

Мережеві інженери використовують модель OSI для візуалізації потоків даних у мережі. Ці знання корисні не лише для розробників та постачальників програмного забезпечення, а й для студентів, які готуються до іспитів, наприклад, сертифікації Cisco Certified Network Associate (CCNA).

Основні переваги вивчення рівнів моделі OSI:

  • Розуміння потоку даних: Модель OSI надає мережевим адміністраторам чітке розуміння того, як дані передаються в мережі. Це допомагає їм зрозуміти взаємодію апаратного та програмного забезпечення. Використовуючи цю інформацію, можна створювати надійніші системи з покращеною безпекою за допомогою відповідних апаратних та програмних рішень.
  • Спрощене усунення несправностей: Розподіл мережі на сім рівнів зі своїми функціями та компонентами спрощує пошук та усунення несправностей. Фахівцям потрібно менше часу на діагностику проблеми. Можна точно визначити мережевий рівень, відповідальний за проблему, та зосередити зусилля на ньому.
  • Забезпечення сумісності: Розробники можуть створювати програмні системи та пристрої, які легко взаємодіють з продуктами різних постачальників. Це підвищує функціональність систем та ефективність роботи користувачів.

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

Рівні моделі OSI

Фізичний рівень

Фізичний рівень – це найнижчий рівень в моделі OSI, який описує фізичні та електричні характеристики системи.

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

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

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

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

Основні функції рівня 1:

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

Канальний рівень

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

Канальний рівень складається з двох частин:

  • Logical Link Control (LLC) ідентифікує мережеві протоколи, синхронізує кадри та перевіряє наявність помилок.
  • Media Access Control (MAC) використовує MAC-адреси для зв’язування пристроїв та встановлення дозволів на передачу даних.

MAC-адреси – це унікальні адреси, призначені кожній системі в мережі, що дозволяють ідентифікувати пристрій. Ці 12-значні номери є фізичними адресами, які контролюються на канальному рівні мережі. Він визначає, як різні мережеві компоненти отримують доступ до фізичного середовища.

Приклад: MAC-адреси можуть складатися з 6 октетів, наприклад, 00:5e:53:00:00:af, де перші три числа є організаційно-унікальним ідентифікатором (OUI), а останні три – ідентифікатором контролера мережевого інтерфейсу (NIC).

Основні функції рівня 2:

  • Виявлення помилок: На цьому рівні відбувається виявлення помилок, але не їх виправлення (яке виконується на транспортному рівні). Іноді в сигналах даних виявляються небажані сигнали, які називаються бітами помилок. Для виявлення помилок використовуються такі методи, як контрольна сума та циклічний надлишковий код (CRC).
  • Керування потоком: Швидкість передачі даних між відправником та отримувачем повинна бути однаковою. Якщо дані у вигляді кадрів надсилаються швидше, ніж отримувач їх обробляє, то дані можуть бути втрачені. Для вирішення цієї проблеми канальний рівень застосовує методи керування потоком, такі як:
    • Метод ковзного вікна, де обидві сторони домовляються про кількість кадрів для передачі.
    • Механізм зупинки та очікування, де відправник зупиняється і чекає підтвердження від отримувача про отримання даних.
  • Множинний доступ: Канальний рівень дозволяє кільком пристроям і системам одночасно передавати дані через одне середовище передачі без конфліктів. Для цього використовуються протоколи множинного доступу з визначенням несучої (CSMA/CD).
  • Синхронізація даних: На рівні каналу передачі даних пристрої, що обмінюються даними, повинні бути синхронізовані для забезпечення плавної передачі.

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

Мережевий рівень

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

Його основні завдання:

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

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

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

  • IP-адреса: Це унікальний 32-бітовий номер, призначений кожному пристрою і використовується як логічна мережева адреса. Вона складається з двох частин: адреси хоста та мережевої адреси. IP-адреса зазвичай представлена ​​чотирма числами, розділеними крапкою, наприклад, 192.0.16.1.
  • Маршрутизатори: На мережевому рівні маршрутизатори використовуються для передачі даних між пристроями, що працюють у різних глобальних мережах (WAN). Маршрутизатори, що беруть участь у передачі даних, не знають точної адреси призначення, тому пакети даних маршрутизуються. Вони мають лише інформацію про місцезнаходження своєї мережі та використовують дані, зібрані у таблиці маршрутизації. Коли дані нарешті досягають цільової мережі, вони надсилаються на цільовий хост.
  • Маски підмережі: Маска підмережі складається з 32 бітів логічної адреси, яку маршрутизатор використовує разом з IP-адресою для визначення місцезнаходження хоста призначення для доставки даних. Це важливо, оскільки адреси хоста та мережі недостатньо для визначення розташування. Прикладом маски підмережі може бути 255.255.255.0.

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

Транспортний рівень

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

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

Розгляньмо процеси на обох кінцях:

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

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

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

Транспортний рівень використовує два протоколи:

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

Деякі функції транспортного рівня:

  • Адреси точок обслуговування: Транспортний рівень має адресу, яка називається адресою порту або точкою обслуговування, що допомагає доставляти повідомлення потрібному отримувачу.
  • Виявлення та керування помилками: Цей рівень забезпечує виявлення та керування помилками, що можуть виникнути під час зберігання сегментів або даних у пам’яті маршрутизатора. Навіть якщо під час переміщення даних через посилання не було виявлено помилок, вони можуть виникнути при зберіганні. Виявлення помилок здійснюється за допомогою таких методів:
    • Циклічна перевірка надмірності (CRC).
    • Генератор контрольних сум та перевірка.

Рівень сеансу

П’ятий рівень у моделі OSI – це рівень сеансу. Він використовується для створення каналів зв’язку, які також називаються сеансами, між різними пристроями. Його завдання:

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

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

Рівень представлення

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

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

Рівень представлення обробляє синтаксис, оскільки відправник та одержувач можуть використовувати різні режими зв’язку, що може спричинити неузгодженість. Цей рівень дозволяє системам легко спілкуватися та розуміти одна одну в одній мережі.

Рівень 6 виконує такі завдання:

  • Шифрування даних на стороні відправника.
  • Розшифрування даних на стороні одержувача.
  • Перетворення форматів, наприклад, з ASCII в EBCDIC.
  • Стиснення даних для мультимедіа перед передачею.

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

Прикладний рівень

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

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

Приклад: Протоколами прикладного рівня можуть бути протокол передачі гіпертексту (HTTP), простий протокол передачі пошти (SMTP), система доменних імен (DNS), протокол передачі файлів (FTP) тощо.

Відмінності між TCP/IP та моделлю OSI

Основні відмінності між TCP/IP та моделлю OSI:

  • TCP/IP, створений Міністерством оборони США (DoD), є більш ранньою концепцією, ніж модель OSI.
  • Функціональна модель TCP/IP була розроблена для вирішення конкретних проблем зв’язку та базується на стандартних протоколах. Модель OSI, з іншого боку, є загальною моделлю, незалежною від протоколів, що використовується для визначення мережевого зв’язку.
  • Модель TCP/IP є простішою та має менше рівнів, ніж модель OSI. Зазвичай вона має чотири шари:
    • Рівень доступу до мережі, який об’єднує рівні 1 і 2 OSI.
    • Інтернет-рівень, який в моделі OSI називається мережевим.
    • Транспортний рівень.
    • Прикладний рівень, який об’єднує рівні 5, 6 і 7 OSI.
  • Модель OSI має сім рівнів: фізичний, канальний, мережевий, транспортний, сеансовий, презентаційний та прикладний.
  • Програми, що використовують TCP/IP, залучають усі рівні. У моделі OSI більшість програм не використовують усі сім рівнів. Насправді, рівні 1-3 є обов’язковими лише для передачі даних.

Висновок

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