Функції фізичного рівня моделі OSI. Канальний рівень мережевої моделі OSI

Поняття «відкрита система»

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

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

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

Для реальних систем повна відкритість недосяжний ідеал. Як правило, навіть у системах, які називають відкритими, цьому визначенню відповідають лише деякі частини, що підтримують зовнішні інтерфейси. Наприклад, відкритість сімейства операційних систем Unix полягає, окрім іншого, у наявності стандартизованого програмного інтерфейсу між ядром і додатками, що дозволяє легко переносити додатки із середовища однієї версії Unix у середовище іншої версії. Ще одним прикладом часткової відкритості є застосування у досить закритій операційній системі Novell NetWareвідкритого інтерфейсу Open Driver Interface (ODI) для включення до системи драйверів мережевих адаптерівнезалежних виробників. Чим більше відкритих специфікацій використано для розробки системи, тим відкритішою вона є.

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

Якщо дві мережі побудовані з дотриманням принципів відкритості, це дає такі переваги:

    можливість побудови мережі з апаратних та програмних засобіврізних виробників, які дотримуються одного й того самого стандарту;

    можливість безболісної заміни окремих компонентів мережі іншими, досконалішими, що дозволяє мережі розвиватися з мінімальними витратами;

    можливість легкого сполучення однієї мережі з іншою;

    простота освоєння та обслуговування мережі.

Яскравим прикладом відкритої системи є міжнародна мережа Internet. Ця мережа розвивалася у повній відповідності до вимог, що висуваються до відкритих систем. У розробці її стандартів брали участь тисячі фахівців-користувачів цієї мережі з різних університетів, наукових організацій та фірм-виробників обчислювальної апаратури та програмного забезпечення, що працюють у різних країнах. Сама назва стандартів, що визначають роботу мережі Internet - Request For Comments (RFC), що можна перекласти як "запит на коментарі", - показує голосний і відкритий характер стандартів, що приймаються. Через війну мережа Internet зуміла об'єднати у собі різноманітне устаткування й програмне забезпечення величезної кількості мереж, розкиданих у світі.

Модель OSI

Міжнародна Організація зі Стандартів (International Standards Organization, ISO) розробила модель, яка чітко визначає різні рівні взаємодії систем, дає їм стандартні імена та вказує, яку роботу має виконувати кожен рівень. Ця модель називається моделлю взаємодії відкритих систем (Open System Interconnection, OSI) або моделлю ISO/OSI.

У моделі OSI взаємодія поділяється на сім рівнів чи верств (рис. 1.1). Кожен рівень має справу з одним певним аспектом взаємодії. Таким чином, проблема взаємодії декомпозована на 7 приватних проблем, кожна з яких може бути вирішена незалежно від інших. Кожен рівень підтримує інтерфейси з вищими та нижчими рівнями.

Мал. 1.1. Модель взаємодії відкритих систем ISO/OSI

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

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

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

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

Крім терміну "повідомлення" (message) існують інші назви, використовувані мережевими фахівцями для позначення одиниці обміну даними. У стандартах ISO для протоколів будь-якого рівня використовується термін "протокольний блок даних" - Protocol Data Unit (PDU). Крім цього часто використовуються назви кадр (frame), пакет (packet), дейтаграма (datagram).

Функції рівнів моделі ISO/OSI

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

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

Прикладом протоколу фізичного рівня може бути специфікація 10Base-T технології Ethernet, яка визначає як кабель, що використовується, неекрановану кручена пара категорії 3 с хвильовим опором 100 Ом, роз'єм RJ-45, максимальну довжину фізичного сегмента 100 метрів, манчестерський код для представлення даних на кабелі та інші характеристики середовища та електричних сигналів.

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

У протоколах канального рівня, що використовуються в локальних мережах, закладено певну структуру зв'язків між комп'ютерами та способи їх адресації. Хоча канальний рівень і забезпечує доставку кадру між будь-якими двома вузлами локальної мережі, він це робить тільки в мережі з певною топологією зв'язків, саме тією топологією, для якої він був розроблений. До таких типових топологій, що підтримуються протоколами канального рівня локальних мереж, відносяться загальна шина, кільце та зірка. Прикладами протоколів канального рівня є Ethernet, Token Ring, FDDI, 100VG-AnyLAN.

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

У глобальних мережах, які рідко мають регулярну топологію, канальний рівень забезпечує обмін повідомленнями між двома сусідніми комп'ютерами, з'єднаними індивідуальною лінією зв'язку. Прикладами протоколів "точка - точка" (як часто називають такі протоколи) можуть бути поширені протоколи PPP і LAP-B.

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

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

Повідомлення мережевого рівня прийнято називати пакетами (packets). Під час організації доставки пакетів на мережному рівні використовується поняття "номер мережі". У цьому випадку адреса одержувача складається з номера мережі та номера комп'ютера в мережі.

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

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

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

Прикладами протоколів мережного рівня є протокол між мережевої взаємодії IP стека TCP/IP та протокол міжмережевого обміну пакетами IPX стека Novell.

Транспортний рівень. На шляху від відправника до одержувача пакети можуть бути спотворені чи загублені. Хоча деякі програми мають власні засоби обробки помилок, існують і такі, які вважають за краще відразу мати справу з надійним з'єднанням. Робота транспортного рівня полягає в тому, щоб забезпечити додаткам або верхнім рівням стека - прикладному та сеансовому - передачу даних з тим ступенем надійності, який їм потрібний. Модель OSI визначає п'ять класів сервісу, що надаються транспортним рівнем. Ці види сервісу відрізняються якістю послуг, що надаються: терміновістю, можливістю відновлення перерваного зв'язку, наявністю засобів мультиплексування декількох з'єднань між різними прикладними протоколами через загальний транспортний протокол, а головне - здатністю до виявлення та виправлення помилок передачі, таких як спотворення, втрата та дублювання пакетів.

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

Як правило, всі протоколи, починаючи з транспортного рівня та вище, реалізуються програмними засобами кінцевих вузлівмережі – компонентами їх мережевих операційних систем. Як приклад транспортних протоколів можна навести протоколи TCP та UDP стека TCP/IP та протокол SPX стека Novell.

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

Рівень уявлення. Цей рівень забезпечує гарантію того, що інформація, що передається прикладним рівнем, буде зрозуміла прикладному рівню в іншій системі. При необхідності рівень подання виконує перетворення форматів даних на деякий загальний формат подання, а на прийомі відповідно виконує зворотне перетворення. Таким чином, прикладні рівні можуть подолати, наприклад, синтаксичні відмінності у поданні даних. На цьому рівні може виконуватися шифрування та дешифрування даних, завдяки якому секретність обміну даними забезпечується одночасно для всіх прикладних сервісів. Прикладом протоколу, що працює на рівні подання, є протокол SSL (Secure Socket Layer), який забезпечує секретний обмін повідомленнями для протоколів прикладного рівня стека TCP/IP.

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

Існує дуже велика різноманітність протоколів прикладного рівня. Наведемо як приклади хоча б кілька найбільш поширених реалізацій файлових сервісів: NCP в операційній системі Novell NetWare, SMB Microsoft Windows NT, NFS, FTP і TFTP, що входять до стек TCP/IP.

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

Мережева модель OSI- Це еталонна модель взаємодії відкритих систем, англійською звучить як Open Systems Interconnection Basic Reference Model. Її призначення в узагальненому поданні засобів мережевої взаємодії.

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

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

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


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

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

Завдання комп'ютера ВІДПРАВИВАЧА:

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

Завдання комп'ютера ОТРИМАЧА:

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

Для того, щоб правильно зробити всі ці операції і необхідний єдиний збір правил, тобто еталонна модель OSI.

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


Розберемо їх докладніше.

7. Прикладний рівень (Application Layer)

Його завдання забрати у мережного додаткадані та відправити на 6 рівень.

6. Рівень вистави (Presentation Layer)

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

5. Сеансовий рівень (Session Layer)

Має багато завдань.

  1. Встановити сеанс зв'язку з одержувачем. ПЗ попереджає комп'ютер-отримувач про те, що зараз йому будуть надіслані дані.
  2. Тут же відбувається розпізнавання імен та захист:
    • ідентифікація - розпізнавання імен
    • автентифікація - перевірка по паролю
    • реєстрація - присвоєння повноважень
  3. Реалізація того, яка зі сторін здійснює передачу інформації та як довго це відбуватиметься.
  4. Розташування контрольних точок у загальному потоці даних для того, щоб у разі втрати якоїсь частини легко було встановити, яка саме частина втрачена і слід відправити повторно.
  5. Сегментація – розбивка великого блоку на маленькі пакети.

4. Транспортний рівень (Transport Layer)

Забезпечує програмам необхідний ступінь захисту під час доставки повідомлень. Є дві групи протоколів:

  • Протоколи, орієнтовані на з'єднання - вони відстежують доставку даних і при необхідності вимагають повторне відправлення при невдачі. Це TCP - протокол контролю передачі.
  • Не орієнтовані на з'єднання (UDP) - вони просто відправляють блоки і далі не стежать за їхньою доставкою.

3. Мережевий рівень (Network Layer)

Забезпечує наскрізну передачу пакета, розраховуючи його маршрут. На цьому рівні в пакетах до всієї попередньої інформації, сформованої іншими рівнями, додаються IP адреси відправника та одержувача. Саме з цього моменту пакет даних називається власне ПАКЕТОМ, який має >>IP адреси (IP протокол — це протокол) міжмережевої взаємодії).

2. Канальний рівень (Data Link Layer)

Тут відбувається передача пакета в межах одного кабелю, тобто однієї локальної мережі. Він працює лише до прикордонного маршрутизатора однієї локальної мережі. До отриманого пакету канальний рівень додає свій заголовок. MAC адресивідправника та одержувача і в такому вигляді блок даних вже називається КАДРОМ.

При передачі межі однієї локальної мережі пакету присвоюється MAC не хоста (комп'ютера), а маршрутизатора інший мережі. Звідси саме постає питання сірих і білих IP, про які йшлося в статті, на яку було вище дане посилання. Сірий — це адреса всередині однієї локальної мережі, яка не використовується за її межами. Біла — унікальна адреса у всьому глобальному інтернеті.

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

1. Фізичний рівень (Transport layer)

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

Стеки протоколів

TCP/IP — це стек протоколів, який управляє передачею даних як у локальній мережі, і у глобальній мережі Інтернет. Цей стек містить 4 рівня, тобто за еталонною моделлю OSI кожен з них поєднує в собі кілька рівнів.

  1. Прикладний (по OSI - прикладний, подання та сеансовий)
    За цей рівень відповідають протоколи:
    • TELNET – віддалений сеанс зв'язку у вигляді командного рядка
    • FTP – протокол передачі файлів
    • SMTP — протокол надсилання пошти
    • POP3 та IMAP — отримання поштових відправлень
    • HTTP - роботи з гіпертекстовими документами
  2. Транспортний (по OSI те саме) — це описані вище TCP і UDP.
  3. Міжмережевий (по OSI – мережевий) – це протокол IP
  4. Рівень мережних інтерфейсів (по OSI — канальний та фізичний) За роботу цього рівня відповідають драйвери мережевих адаптерів.

Термінологія при позначенні блоку даних

  • Потік - дані, якими оперуються на прикладному рівні
  • Дейтаграма — блок даних на виході з UPD, тобто не має гарантованої доставки.
  • Сегмент – гарантований для доставки блок на виході з протоколу TCP
  • Пакет – блок даних на виході з протоколу IP. оскільки на цьому рівні він ще не гарантований до доставки, то також може називатися дейтаграмою.
  • Кадр – блок із присвоєними MAC адресами.

Еталонна модель OSI

Для наочності процес роботи мережі в еталонній моделі OSI поділено на сім рівнів. Ця теоретична конструкція полегшує вивчення та розуміння досить складних концепцій. У верхній частині моделі OSI розташовується додаток, якому потрібен доступ до ресурсів мережі, в нижній - саме мережеве середовище. У міру того як дані просуваються від рівня до рівня вниз, протоколи, що діють на цих рівнях, поступово готують їх для передачі по мережі. Діставшись цільової системи, дані просуваються за рівнями вгору, причому самі протоколи виконують самі дії, лише у зворотному порядку. У 1983 р. Міжнародна організація зі стандартизації(International Organization for Standardization, ISO) та Сектор стандартизаціїтелекомунікацій Міжнародної телекомунікаційної спілки(Telecommunication Standardization Sector of International Telecommunication Union, ITU-T) опублікували документ "The Basic Reference Model for Open Systems Interconnection", де було описано модель розподілу мережевих функційміж 7 різними рівнями (рис. 1.7). Передбачалося, що ця семирівнева структура стане основою для нового стека протоколів, але у комерційній формі він не був реалізований. Натомість модель OSI використовується з існуючими стеками протоколів як навчальний та довідковий посібник. Більшість популярних в наші дні протоколів з'явилася до розробки моделі OSI, тому в точності з її семирівневою структурою вони не узгоджуються. Найчастіше в одному протоколі поєднані функції двох або навіть кількох рівнів моделі, та й межі протоколів часто не відповідають межам рівнів OSI. Проте модель OSI залишається чудовою наочним посібникомдля дослідження мережевих процесів та професіонали часто пов'язують функції та протоколи з певними рівнями.

Інкапсуляція даних

По суті, взаємодія протоколів, що працюють на різних рівнях моделі OSI, проявляється в тому, що кожний протокол додає Заголовок(header) або (в одному випадку) трейлер(Footer) до інформації, яку він отримав від рівня, розташованого вище. Наприклад, програма генерує запит до мережного ресурсу. Цей запит просувається стеком протоколів вниз. Коли він досягає транспортного рівня, протоколи цього рівня додають до запиту власний заголовок, що складається з полів з інформацією, специфічною для функцій даного протоколу. Сам вихідний запит стає протоколу транспортного рівня полем даних (корисним навантаженням). Додавши свій заголовок, протокол транспортного рівня передає запит мережному рівню. Протокол мережного рівня додає до заголовка протоколу транспортного рівня свій власний заголовок. Таким чином, для протоколу мережного рівня корисним навантаженням стають вихідний запит та заголовок протоколу транспортного рівня. Вся ця конструкція стає корисним навантаженням для протоколу канального рівня, який додає до неї заголовок та трейлер. Підсумком цієї діяльності є пакет(Packet), готовий для передачі по мережі. Коли пакет досягає місця призначення, процес повторюється у зворотному порядку. Протокол кожного наступного рівнястека (тепер знизу вгору) обробляє та видаляє заголовок еквівалентного протоколу передавальної системи. Коли процес завершено, вихідний запит досягає додатку якому він призначений, у тому вигляді, в якому він був згенерований. Процес додавання заголовків до запиту (рис. 1.8), згенерованого додатком, називається інкапсуляцією даних(Data encapsulation). По суті, ця процедура нагадує процес підготовки листа для відправки поштою. Запит - це сам лист, а додавання заголовків аналогічне вкладанню листа в конверт, написання адреси, штемпелювання та власне відправлення.

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

На найнижчому рівні моделі OSI - фізичному(physical) - визначаються характеристики елементів обладнання мережі - мережне середовище, спосіб встановлення, тип сигналів, що використовуються передачі по мережі двійкових даних. Крім того, фізично визначається, який тип мережного адаптера потрібно встановити на кожному комп'ютері і який використовувати концентратор (якщо це потрібно). Фізично ми маємо справу з мідним або оптоволоконним кабелем або з будь-яким бездротовим з'єднанням. У ЛОМ специфікації фізичного рівня безпосередньо пов'язані з протоколом канального рівня, що використовується в мережі. Вибравши протокол канального рівня, Ви повинні використовувати одну зі специфікацій фізичного рівня, яку підтримує цей протокол. Наприклад, протокол канального рівня Ethernet підтримує кілька різних варіантів фізичного рівня - один із двох типів коаксіального кабелю, будь-який кабель типу «кручена пара», оптоволоконний кабель. Параметри кожного з цих варіантів формуються з численних відомостей про вимоги фізичного рівня, наприклад, до типу кабелю та роз'ємів, допустимої довжини кабелів, кількості концентраторів та ін Дотримання цих вимог необхідне для нормальної роботи протоколів. Наприклад, в надто довгому кабелі система Ethernet може не помітити колізію пакетів, а якщо система не в змозі виявити помилки, вона не може виправити їх, результат - втрата даних. Стандартом протоколу канального рівня визначаються в повному обсязі аспекти фізичного рівня. Деякі їх визначаються окремо. Одна з найбільш часто використовуваних специфікацій фізичного рівня описана в документі Commercial Building Telecommunications Cabling Standard, відомому як EIA/TIA 568A. Він опублікований спільно Американським національним інститутом стандартів(American National Standards Institute, ANSI), Асоціації відраслей електронної промисловості(Electronics Industry Association, EIA) та Асоціацією промисловості засобів зв'язку(Telecommunications Industry Association, TIA). Цей документ містить детальний опис кабелів для мереж передачі даних у промислових умовах, у тому числі мінімальну відстань від джерел електромагнітних перешкодта інші правила прокладання кабелю. Сьогодні кладку кабелю в великих мережахнайчастіше доручають спеціалізованим фірмам. Найнятий підрядник повинен бути добре знайомий з EIA/TIA 568A та іншими подібними документами, а також правилами експлуатації будівель у місті. Інший комунікаційний елемент, Який визначається на фізичному рівні, - тип сигналу для передачі даних по мережному середовищі. Для кабелів з мідною основою таким сигналом є електричний заряд, оптоволоконного кабелю- Світловий імпульс. У мережевих середовищах інших типів можуть використовуватися радіохвилі, інфрачервоні імпульси та інші сигнали. Крім природи сигналів, фізично встановлюється схема їх передачі, тобто комбінація електричних зарядів або світлових імпульсів, що використовується для кодування двійкової інформації, яка згенерована вищими рівнями. У системах Ethernet застосовується схема передачі сигналів, відома як манчестерське кодування(Manchester encoding), а системах Token Ring використовується диференційнаманчестерська(Differential Manchester) схема.

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

Протокол канального(data-link) рівня забезпечує обмін інформацією між апаратною частиною включеного в мережу комп'ютера та мережним програмним забезпеченням. Він готує для відправки до мережі дані, передані йому протоколом мережного рівня, і передає на мережевий рівень дані, отримані системою з мережі. При проектуванні та створенні ЛОМ використовуваний протокол канального рівня - найважливіший чинник вибору обладнання та способу його установки. Для реалізації протоколу канального рівня необхідно наступне апаратне та програмне забезпечення: адаптери мережного інтерфейсу (якщо адаптер є окремим пристроєм, що підключається до шини, його називають платою мережевого інтерфейсу або просто мережевою платою); драйвери мережевого адаптера; мережеві кабелі (або інше мережеве середовище) та допоміжне сполучне обладнання; мережеві концентратори (у деяких випадках). Як мережеві адаптери, і концентратори розробляються для певних протоколів канального рівня. Деякі мережеві кабелі також пристосовані для конкретних протоколів, але є й кабелі, які підходять для різних протоколів. Безумовно, сьогодні (як і завжди) найпопулярніший протокол канального рівня – Ethernet. Далеко відстав від нього Token Ring, за яким йдуть інші протоколи, наприклад, FDDI (Fiber Distributed Data Interface). У специфікацію протоколу канального рівня зазвичай включаються три основні елементи: формат кадру (тобто заголовок і трейлер, що додаються до даних мережного рівня перед передачею до мережі); механізм контролю доступу до мережного середовища; одна або кілька специфікацій фізичного рівня, які застосовуються з цим протоколом.

Формат кадру

Протокол канального рівня додає до даних, отриманих від протоколу мережного рівня, заголовок і трейлер, перетворюючи їх на кадр(Frame) (рис. 1.9). Якщо знову вдатися до аналогії з поштою, заголовок та трейлер – це конверт для надсилання листа. Вони містяться адреси системи-відправника і системи-одержувача пакета. Для протоколів ЛОМ, подібних до Ethernet і Token Ring, ці адреси являють собою 6-байтні шістнадцяткові рядки, присвоєні мережним адаптерам на заводі-виробнику. Вони, на відміну від адрес, які використовуються на інших рівнях моделі OSI, називаються апа ратними адресами(hardware address) або МАС-адресами (див. нижче).

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

Важливо розуміти, що протоколи канального рівня забезпечують зв'язок лише між комп'ютерами однієї й тієї ЛВС. Апаратна адреса в заголовку завжди належить комп'ютеру в тій же мережі, навіть якщо цільова система знаходиться в іншій мережі. Інші важливі функції кадру канального рівня - ідентифікація протоколу мережного рівня, що згенерував дані в пакеті, та інформація для виявлення помилок. На мережному рівні можуть використовуватися різні протоколи, і тому кадр протоколу канального рівня зазвичай включається код, з допомогою якого можна встановити, який саме протокол мережного рівня згенерував дані у цьому пакеті. Керуючись цим кодом, протокол канального рівня комп'ютера-отримувача пересилає дані відповідного протоколу мережного рівня. Для виявлення помилок передавальна система обчислює циклічні кий надлишковий код(Cyclical redundancy check, CRC) корисного навантаження і записує його в трейлер кадру. Отримавши пакет, цільовий комп'ютер виконує ті самі обчислення та порівнює результат із вмістом трейлера. Якщо результати збігаються, інформація надана без помилок. В іншому випадку одержувач припускає, що пакет зіпсований, і не приймає його.

Управління доступом до середовища

Комп'ютери в ЛОМ зазвичай використовують загальне напівдуплексне мережеве середовище. При цьому цілком можливо, що передавати дані почнуть одночасно два комп'ютери. У таких випадках відбувається свого роду зіткнення пакетів, колізія(collision), при якому дані в обох пакетах губляться. Одна з головних функцій протоколу канального рівня - керування доступом до мережного середовища (media access control, MAC), тобто контроль за передачею даних кожним з комп'ютерів та мінімізація випадків зіткнення пакетів. Механізм управління доступом до середовища - одна з найважливіших характеристик протоколу канального рівня. В Ethernet для керування доступом до середовища використовується механізм з контролем несучої та виявлення колізій (Carrier Sense Multiple Access with Collision Detection, CSMA/CD). У деяких інших протоколах, наприклад, Token Ring, використовується передача маркера (token passing).

Специфікації фізичного рівня

Протоколи канального рівня, що використовуються в ЛОМ, часто підтримують більше одного мережевого середовища, і стандарт протоколу включені одна або кілька специфікацій фізичного рівня. Канальний і фізичний рівні тісно пов'язані, тому що властивості мережного середовища істотно впливають на те, як протокол управляє доступом до середовища. Тому можна сказати, що у локальних мережах протоколи канального рівня здійснюють також функції фізичного рівня. У глобальних мережах використовуються протоколи канального рівня, які інформація фізичного рівня не включається, наприклад, SLIP (Serial Line Internet Protocol) і РРР (Point-to-Point Protocol).

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

На перший погляд може здатися, що мережевий(Network) рівень дублює деякі функції канального рівня. Але це не так: протоколи мережевого рівня «відповідають» за наскрізні(end-to-end) зв'язку, тоді як протоколи канального рівня функціонують лише межах ЛВС. Інакше кажучи, протоколи мережного рівня повністю забезпечують передачу пакета від вихідної до цільової системи. Залежно від типу мережі, відправник і одержувач можуть знаходитися в одній ЛОМ, в різних ЛОМ в межах однієї будівлі або ЛВС, розділених тисячами кілометрів. Наприклад, коли ви зв'язуєтеся з сервером в Інтернеті, на шляху до нього пакети, створені вашим комп'ютером, проходять через десятки мереж. Підлаштовуючись під ці мережі, протокол канального рівня неодноразово зміниться, але протокол мережного рівня по всьому шляху залишиться тим самим. Наріжним каменем набору протоколів TCP/IP (Transmission Control Protocol/Internet Protocol) і найчастіше використовуваним протоколом мережного рівня є протокол IP (Internet Protocol). Novell NetWare має власний мережевий протокол IPX (Internetwork Packet Exchange), а в невеликих мережах Microsoft Windows зазвичай використовується протокол NetBEUI (NetBIOS Enhanced User Interface). Більшість функцій, що приписуються мережному рівню, визначаються можливостями протоколу IP. Подібно до протоколу канального рівня, протокол мережного рівня додає заголовок до даних, які він отримав від вищого рівня (рис. 1.10). Елемент даних, створений протоколом мережного рівня, складається з даних транспортного рівня та заголовка мережевого рівня і називається дейтаграмою(Datagram).


Адресація

Заголовок протоколу мережного рівня, як і заголовок протоколу канального рівня, містить поля з адресами вихідної та цільової систем. Однак в даному випадку адреса цільової системи належить кінцевому призначенню пакета і може відрізнятися від адреси одержувача заголовку протоколу канального рівня. Наприклад, коли Ви вводите в адресному рядку браузера адресу Web-вузла, в пакеті, згенерованому Вашим комп'ютером, як адреса цільової системи мережного рівня вказана адреса Web-сервера, тоді як на канальному рівні на цільову систему вказує адресу маршрутизатора у Вашій ЛОМ, що забезпечує вихід в Інтернет. В IP використовується власна система адресації, яка не залежить від адрес канального рівня. Кожному комп'ютеру в мережі з протоколом IP вручну або автоматично призначається 32-бітовий IP-адреса, що ідентифікує як сам комп'ютер, і мережу, де він перебуває. У IPX для ідентифікації самого комп'ютера використовується апаратний адресу, крім того, спеціальна адреса використовується для ідентифікації мережі, в якій знаходиться комп'ютер. У NetBEUI комп'ютери розрізняються за NetBIOS-іменами, що присвоюються кожній системі під час її встановлення.

Фрагментація

Дейтаграм мережного рівня на шляху до місця призначення доводиться проходити через безліч мереж, стикаючись при цьому зі специфічними властивостями та обмеженнями різних протоколів канального рівня. Одне з таких обмежень – максимальний розмір пакета, дозволений протоколом. Наприклад, розмір кадру Token Ring може досягати 4500 байт, тоді як розмір кадру Ethernet не може перевищувати 1500 байтів. Коли велика дейтаграма, сформована у мережі Token Ring, передається в мережу Ethernet, протокол мережного рівня повинен розбити її кілька фрагментів розміром трохи більше 1500 байт. Цей процес називається фрагментацією(frag mentation). У процесі фрагментації протокол мережного рівня розбиває дейтаграму на фрагменти, розмір яких відповідає можливостям протоколу канального рівня. Кожен фрагмент стає самостійним пакетом і продовжує шлях до цільової системимережного рівня. Вихідна дейтаграма формується лише після того, як місця призначення досягнуть усі фрагменти. Іноді шляху до цільової системі фрагменти, куди розбита дейтаграмма, доводиться фрагментувати повторно.

Маршрутизація

Маршрутизацією(routing) називається процес вибору в інтермережі найефективнішого маршруту для передачі дейтаграм від системи-відправника до системи-одержувача. У складних інтермережах, наприклад, в Інтернеті або великих корпоративних мережах, часто від одного комп'ютера до іншого можна дістатись кількома шляхами. Проектувальники мереж спеціально створюють надлишкові зв'язки, щоб трафік знайшов дорогу до місця призначення навіть у разі збою одного з маршрутизаторів. За допомогою маршрутизаторів з'єднують окремі ЛОМ, що входять до мережі. Призначення маршрутизатора – приймати вхідний трафік від однієї мережі та передавати його конкретній системі до іншої. В інтермерті розрізняють системи двох видів: кінцеві(end systems) та проміжні(Intermediate systems). Кінцеві системи є відправниками та одержувачами пакетів. Маршрутизатор – проміжна система. В кінцевих системах використовуються всі сім рівнів моделі OSI, тоді як пакети, що надходять у проміжні системи, не піднімаються вище за мережний рівень. Там маршрутизатор обробляє пакет і відправляє його вниз по стеку передачі наступній цільової системі (рис. 1.11).


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

Ідентифікація протоколу транспортного рівня

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

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

Функції, що виконуються протоколами транспортного(Transport) рівня, доповнюють функції протоколів мережного рівня. Часто протоколи цих рівнів, що використовуються передачі даних, утворюють взаємозв'язану пару, що видно з прикладу TCP/IP: протокол TCP функціонує транспортному рівні, IP - на мережевому. У більшості наборів протоколів є два або кілька протоколів транспортного рівня, які виконують різні функції. Альтернативою TCP є протокол UDP (User Datagram Protocol). До набору протоколів IPX також включено кілька протоколів транспортного рівня, у тому числі NCP (NetWare Core Protocol) та SPX (Sequenced Packet Exchange). Різниця між протоколами транспортного рівня з певного набору у тому, деякі з них орієнтовані з'єднання, інші - немає. Системи, що використовують протокол, орієнтований на з'єднання(connection-oriented), перед передачею даних обмінюються повідомленнями, щоб встановити зв'язок друг з одним. Це гарантує, що системи включені та готові до роботи. Протокол TCP, наприклад, орієнтовано з'єднання. Коли Ви за допомогою браузера підключаєтеся до Інтернет-сервера, браузер і сервер для встановлення зв'язку спочатку виконують так зване трикроковий рукостискання(three-way handshake). Лише після цього браузер передає серверу адресу потрібної веб-сторінки. Коли передача даних завершена, системи виконують той самий рукостискання для припинення зв'язку. Крім того, протоколи, орієнтовані на з'єднання, виконують додаткові дії, наприклад, відправляють сигнал підтвердження прийому пакета, сегментують дані, керують потоком, а також виявляють та виправляють помилки. Як правило, протоколи цього типу використовуються для передачі великих обсягівінформації, в яких не повинно бути жодного помилкового біта, наприклад, файлів даних або програм. Додаткові функції протоколів з орієнтацією на з'єднання гарантують правильну передачу даних. Ось чому ці протоколи часто називають надійними(Reliable). Надійність у цьому випадку є технічним терміном і означає, що кожен пакет, що передається, перевіряється на наявність помилок, крім того, система-відправник повідомляється про доставку кожного пакета. Недолік протоколів цього полягає у значному обсязі управляючих даних, якими обмінюються дві системи. По перше, додаткові повідомленняпередаються при встановленні та завершенні зв'язку. По-друге, заголовок, що додається до пакета протоколом з орієнтацією на з'єднання, значно перевищує за розміром заголовок протоколу, не орієнтованого на з'єднання. Наприклад, заголовок протоколу TCP/IP займає 20 байтів, а заголовок UDP – 8 байтів. Протокол, не орієнтований на з'єднання(connectionless), не встановлює з'єднання між двома системами до передачі. Відправник просто передає інформацію цільовій системі, не турбуючись про те, чи готова вона прийняти дані і чи існує ця система взагалі. Зазвичай системи вдаються до протоколів, не орієнтованих на з'єднання, наприклад, UDP, для коротких транзакцій, що складаються тільки з запитів і сигналів у відповідь. Сигнал у відповідь від одержувача неявно виконує функцію сигналу підтвердження про передачу.

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

Протоколи транспортного рівня (як і мережевого та канального рівнів) зазвичай містять інформацію з вищих рівнів. Наприклад, у заголовки TCP і UDP включаються номери портів, що ідентифікують додаток, що породив пакет, і додаток, якому він призначений. на сеансовому(session) рівні починається суттєва розбіжність між реально застосовуваними протоколами та моделлю OSI. На відміну від нижчестоящих рівнів, виділених протоколів сеансового рівня немає. Функції цього рівня інтегровані в протоколи, які виконують також функції представницького та прикладного рівнів. Транспортний, мережевий, канальний та фізичний рівні займаються власне передачею даних через мережу. Протоколи сеансового та вищих рівнів до процесу зв'язку відношення не мають. До сеансового рівня належать 22 служби, багато з яких задають способи обміну інформацією між системами, включеними до мережі. Найбільш важливі служби управління діалогом та поділу діалогу. Обмін інформацією між двома системами у мережі називається діалогом(Діалог). Управління діалогом(dialog control) полягає у виборі режиму, в якому системи обмінюватимуться повідомленнями. Таких режимів два: напівдуплексний(two-way alternate, TWA) та дуплексний(Two-way simultaneous, TWS). У підлозі дуплексному режимідві системи разом із даними передають також маркери. Передавати інформацію можна лише комп'ютеру, у якого зараз знаходиться маркер. Так вдається уникнути зіткнення повідомлень у дорозі. Дуплексна модель складніша. Маркерів у ній немає; обидві системи можуть передавати дані будь-якої миті, навіть одночасно. Поділ діалогу(dialog separation) полягає у включенні до потоку даних контрольних точок(checkpoints), що дозволяють синхронізувати роботу двох систем. Ступінь складності поділу діалогу залежить від цього, в якому режимі він здійснюється. У напівдуплексному режимі системи виконують малу синхронізацію, яка полягає в обміні повідомленнями про контрольні точки. У дуплексному режимі системи виконують повну синхронізацію за допомогою головного/активного маркера.

Представницький рівень

на представницькому(presentation) рівні виконується єдина функція: трансляція синтаксису між різними системами. Іноді комп'ютери в мережі використовують різні синтаксиси. Представницький рівень дозволяє їм домовитися про загальний синтаксис для обміну даними. Встановлюючи з'єднання на представницькому рівні, системи обмінюються повідомленнями з інформацією про те, які синтаксиси в них є, і вибирають той, який вони будуть використовувати під час сеансу. Обидві системи, що беруть участь у з'єднанні, мають абстрактнийсинтаксис(abstract syntax) - їхня «рідна» форма зв'язку. Абстрактні синтаксиси різних комп'ютерних платформ можуть відрізнятися. У процесі узгодження системи обирають загальний синтаксис передачіданих(Transfer syntax). Передавальна система перетворює свій абстрактний синтаксис на синтаксис передачі, а система-одержувач по завершенню передачі - навпаки. При необхідності система може вибрати синтаксис передачі даних з додатковими функціяминаприклад, стисненням або шифруванням даних.

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

Прикладний рівень - це точка входу, через яку програми отримують доступ до моделі OSI та мережевим ресурсам. Більшість протоколів прикладного рівня надає послуги доступу до мережі. Наприклад, протокол SMTP (Simple Mail Transfer Protocol) більшість програм електронної пошти користується для надсилання повідомлень. Інші протоколи прикладного рівня, наприклад FTP (File Transfer Protocol), самі є програмами. У протоколи прикладного рівня часто включають функції сеансового та представницького рівня. В результаті типовий стек протоколів містить чотири окремі протоколи, які працюють на прикладному, транспортному, мережевому та канальному рівнях.

Для єдиного представлення даних у мережах із неоднорідними пристроями та програмним забезпеченням міжнародна організація за стандартами ISO (International Standardization Organization) розробила базову модель зв'язку відкритих систем OSI(Open System Interconnection) . Ця модель визначає правила і процедури передачі в різних мережевих середовищах при організації сеансу зв'язку. Основними елементами моделі є рівні, прикладні процеси та фізичні засоби з'єднання. На рис. 1.10 представлено структуру базової моделі.

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

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

Мал. 1.10. Модель OSI

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

Взаємодія рівнів моделі OSI

Модель OSI можна розділити на дві різних моделей, Як показано на рис. 1.11:

Горизонтальну модель на базі протоколів, що забезпечує механізм взаємодії програм та процесів на різних машинах;

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

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

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

У горизонтальній моделі двом програмам потрібен загальний протокол обміну даними. У вертикальній моделі сусідні рівні обмінюються даними із використанням інтерфейсів прикладних програм API (Application Programming Interface).

Мал. 1.11. Схема взаємодії комп'ютерів у базовій еталонній моделі OSI

Перед подачею до мережі дані розбиваються на пакети. Пакет (packet) – це одиниця інформації, яка передається між станціями мережі.

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

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

Мал. 1.12. Формування пакета кожного рівня семирівневої моделі

Кожен рівень моделі виконує свою функцію. Чим вищий рівень, тим складніше завдання він вирішує.

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

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

Мал. 1.13. Функції рівнів моделі OSI

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

взаємодії прикладних процесів;

Форми подання даних;

Єдине зберігання даних;

управлінню мережевими ресурсами;

Безпеки даних та захисту інформації;

Діагностики програм та технічних засобів.

Прикладний рівень (Application layer)

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

Насправді прикладний рівень – це набір різноманітних протоколів, за допомогою яких користувачі мережі отримують доступ до ресурсів, що розділяються, таким як файли, принтери або гіпертекстові Web-сторінки, а також організують свою спільну роботу, наприклад за допомогою протоколу електронної пошти. Спеціальні елементи прикладного сервісу забезпечують сервіс для конкретних прикладних програм, таких як програми пересилання файлів та емуляції терміналів. Якщо, наприклад, програмі необхідно переслати файли, то обов'язково буде використано протокол передачі, доступу та управління файлами FTAM (File Transfer, Access, and Management). У моделі OSI прикладна програма, якій потрібно виконати конкретне завдання (наприклад, оновити базу даних на комп'ютері), посилає конкретні дані у вигляді дейтаграми на прикладний рівень. Одне з основних завдань цього рівня – визначити, як слід обробляти запит прикладної програми, тобто, який вид має прийняти даний запит.

Одиниця даних, якою оперує прикладний рівень, зазвичай називається повідомленням (message).

Прикладний рівень виконує такі функції:

1. Виконання різних видівробіт.

Передача файлів;

Управління завданнями;

Управління системою тощо;

2. Ідентифікація користувачів за їхніми паролями, адресами, електронними підписами;

3. Визначення функціонуючих абонентів та можливості доступу до нових прикладних процесів;

4. Визначення достатності наявних ресурсів;

5. Організація запитів на з'єднання з іншими прикладними процесами;

6. Передача заявок на представницький рівень на необхідні методи опису інформації;

7. Вибір процедур запланованого діалогу процесів;

8. Управління даними, якими обмінюються прикладні процеси та синхронізація взаємодії прикладних процесів;

9. Визначення якості обслуговування (час доставки блоків даних, допустимої частоти помилок);

10. Угода про виправлення помилок та визначення достовірності даних;

11. Узгодження обмежень, що накладаються на синтаксис (набори символів, структура даних).

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

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

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

До найпоширеніших протоколів верхніх трьох рівнів относятся:

FTP (File Transfer Protocol) протокол передачі файлів;

TFTP (Trivial File Transfer Protocol) найпростіший протокол пересилання файлів;

X.400 електронної пошти;

Telnet робота з віддаленим терміналом;

SMTP (Simple Mail Transfer Protocol) - простий протокол поштового обміну;

CMIP (Common Management Information Protocol) – загальний протокол управління інформацією;

SLIP (Serial Line IP) IP для послідовних ліній. протокол послідовної посимвольної передачі даних;

SNMP (Simple Network Management Protocol) - простий протокол мережного управління;

FTAM (File Transfer, Access, and Management) протокол передачі, доступу та управління файлами.

Рівень представлення даних (Presentation layer)

Функції цього рівня – представлення даних, переданих між прикладними процесами, у потрібній формі.

Цей рівень забезпечує те, що інформація, що передається прикладним рівнем, буде зрозуміла прикладному рівню в іншій системі. У разі необхідності рівень подання у момент передачі виконує перетворення форматів даних на деякий загальний формат подання, а момент прийому, відповідно, виконує зворотне перетворення. Таким чином, прикладні рівні можуть подолати, наприклад, синтаксичні відмінності у поданні даних. Така ситуація може виникнути в ЛОМ з неоднотипними комп'ютерами (IBM PC та Macintosh), яким необхідно обмінюватися даними. Так, у полях баз даних інформація має бути представлена ​​у вигляді букв та цифр, а найчастіше і у вигляді графічного зображення. Обробляти ці дані потрібно, наприклад, як числа з плаваючою комою.

В основу загального представлення даних покладено єдину для всіх рівнів моделі систему ASN.1. Ця система використовується для опису структури файлів, а також дозволяє вирішити проблему шифрування даних. На цьому рівні може виконуватися шифрування та дешифрування даних, завдяки яким секретність обміну даними забезпечується одночасно для всіх прикладних сервісів. Прикладом такого протоколу є Secure Socket Layer (SSL), який забезпечує секретний обмін повідомленнями для протоколів прикладного рівня стека TCP/IP. Цей рівень забезпечує перетворення даних (кодування, компресія тощо) прикладного рівня потоку інформації для транспортного рівня.

Представницький рівень виконує такі основні функції:

1. Генерація запитів встановлення сеансів взаємодії прикладних процесів.

2. Погодження подання даних між прикладними процесами.

3. Реалізація форм подання даних.

4. Подання графічного матеріалу (креслень, малюнків, схем).

5. Засекречування даних.

6. Надсилання запитів на припинення сеансів.

Протоколи рівня подання даних зазвичай є складовоюпротоколи трьох верхніх рівнів моделі.

Сеансовий рівень (Session layer)

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

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

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

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

Напівдуплексний (процеси будуть передавати та приймати дані по черзі);

Дуплексна (процеси будуть передавати дані, і приймати їх одночасно).

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

Сеансовий рівень забезпечує виконання таких функцій:

1. Встановлення та завершення на сеансовому рівні з'єднання між взаємодіючими системами.

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

3. Управління взаємодією прикладних процесів.

4. Синхронізація сеансових з'єднань.

5. Повідомлення прикладних процесів про виняткові ситуації.

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

7. Переривання у випадках прикладного процесу та її коректне відновлення.

8. Припинення сеансу без втрати даних.

9. Надсилання спеціальних повідомлень про хід проведення сеансу.

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

Транспортний рівень (Transport Layer)

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

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

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

До функцій транспортного рівня входять:

1. Управління передачею по мережі та забезпечення цілісності блоків даних.

2. Виявлення помилок, часткова їх ліквідація та повідомлення про невиправлені помилки.

3. Відновлення передачі після відмов та несправностей.

4. Укрупнення чи поділ блоків даних.

5. Надання пріоритетів під час передачі блоків (нормальна чи термінова).

6. Підтвердження передачі.

7. Ліквідація блоків при тупикових ситуаціях у мережі.

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

Найбільш поширені протоколи транспортного рівня включають:

TCP (Transmission Control Protocol) протокол управління передачею стека TCP/IP;

UDP (User Datagram Protocol) користувача протокол дейтаграм стека TCP/IP;

NCP (NetWare Core Protocol) - базовий протокол мереж NetWare;

SPX (Sequenced Packet eXchange) упорядкований обмін пакетами стека Novell;

TP4 (Transmission Protocol) – протокол передачі класу 4.

Мережевий рівень (Network Layer)

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

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

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

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

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

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

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

Мережевий рівень виконує функції:

1. Створення мережевих з'єднань та ідентифікація їх портів.

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

3. Управління потоками пакетів.

4. Організація (упорядкування) послідовностей пакетів.

5. Маршрутизація та комутація.

6. Сегментування та об'єднання пакетів.

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

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

Найчастіше на мережному рівні використовуються протоколи:

IP (Internet Protocol) протокол Internet, мережевий протокол стека TCP/IP, який надає адресну та маршрутну інформацію;

IPX (Internetwork Packet Exchange) протокол міжмережевого обміну пакетами, призначений для адресації та маршрутизації пакетів у мережах Novell;

X.25 міжнародний стандарт для глобальних комунікацій з комутацією пакетів (частково цей протокол реалізовано лише на рівні 2);

CLNP (Connection Less Network Protocol) мережевий протокол без організації з'єднань.

Канальний рівень (Data Link)

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

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

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

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

На цьому рівні визначаються правила використання фізичного рівня вузлами мережі. Електричне представлення даних у ЛОМ (біти даних, методи кодування даних та маркери) розпізнаються на цьому і тільки на цьому рівні. Тут виявляються та виправляються (шляхом вимог повторної передачіданих) помилки.

Канальний рівень забезпечує створення, передачу та прийом кадрів даних. Цей рівень обслуговує запити мережного рівня та використовує сервіс фізичного рівня для прийому та передачі пакетів. Специфікації IEEE 802.Х ділять канальний рівень на два підрівні:

LLC (Logical Link Control) керування логічним каналом здійснює логічний контроль зв'язку. Підрівень LLC забезпечує обслуговування мережевого рівня і пов'язаний з передачею та прийомом повідомлень користувача.

MAC (Media Assess Control) – контроль доступу до середовища. Підрівень MAC регулює доступ до фізичного середовища, що розділяється (передача маркера або виявлення колізій або зіткнень) і керує доступом до каналу зв'язку. Підрівень LLC знаходиться вище за рівень МАC.

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

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

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

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

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

1. Організація (встановлення, управління, розірвання) канальних з'єднань та ідентифікація їх портів.

2. Організація та передача кадрів.

3. Виявлення та виправлення помилок.

4. Управління потоками даних.

5. Забезпечення прозорості логічних каналів (передачі даних, закодованих будь-яким способом).

Найчастіше використовувані протоколи на канальному рівні включають:

HDLC (High Level Data Link Control) протокол управління каналом передачі високого рівня, для послідовних з'єднань;

IEEE 802.2 LLC (тип I і тип II) забезпечують MAC для середовищ 802.x;

Ethernet мережна технологія за стандартом IEEE 802.3 для мереж, що використовує шинну топологію та колективний доступ із прослуховуванням несучої частоти та виявлення конфліктів;

Token ring мережна технологія за стандартом IEEE 802.5, що використовує кільцеву топологію та метод доступу до кільця з передачею маркера;

FDDI (Fiber Distributed Date Interface Station) мережна технологія за стандартом IEEE 802.6, що використовує оптоволоконний носій;

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

Frame relay мережа, організована з технологій Х25 та ISDN.

Фізичний рівень (Physical Layer)

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

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

Фізичний рівень складається з підрівня стикування з середовищем і підрівня перетворення передачі.

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

Тип кабелів та роз'ємів;

Розведення контактів у роз'ємах;

Схему кодування сигналів для значень 0 та 1.

Фізичний рівень виконує такі функції:

1. Встановлення та роз'єднання фізичних сполук.

2. Передача сигналів у послідовному коді та прийом.

3. Прослуховування, у випадках, каналів.

4. Ідентифікація каналів.

5. Оповіщення про появу несправностей та відмов.

Оповіщення про появу несправностей та відмов пов'язане з тим, що фізично відбувається виявлення певного класу подій, що заважають нормальній роботімережі (зіткнення кадрів, надісланих відразу кількома системами, обрив каналу, відключення живлення, втрата механічного контакту тощо). Види сервісу, що надається канального рівня, визначаються протоколами фізичного рівня. Прослуховування каналу необхідно в тих випадках, коли до одного каналу підключається група систем, але одночасно передавати сигнали дозволяється лише одній. Тому прослуховування каналу дозволяє визначити, чи він вільний для передачі. У ряді випадків для чіткішого визначення структури фізичний рівень розбивається на кілька підрівнів. Наприклад, фізичний рівень бездротової мережі поділяється на три підрівні (рис. 1.14).

Мал. 1.14. Фізичний рівень бездротової локальної мережі

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

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

Прикладом протоколу фізичного рівня може служити специфікація 10Base-T технології Ethernet, яка визначає як кабель, що використовується, неекрановану кручену пару категорії 3 з хвильовим опором 100 Ом, роз'єм RJ-45, максимальну довжину фізичного сегмента 100 метрів, манчестерський код для середовища та електричних сигналів.

До найпоширеніших специфікацій фізичного рівня относятся:

EIA-RS-232-C, CCITT V.24/V.28 – механічні/електричні характеристики незбалансованого послідовного інтерфейсу;

EIA-RS-422/449, CCITT V.10 – механічні, електричні та оптичні характеристики збалансованого послідовного інтерфейсу;

Ethernet – мережна технологія за стандартом IEEE 802.3 для мереж, що використовує шинну топологію та колективний доступ із прослуховуванням несучої та виявленням конфліктів;

Token ring – мережна технологія за стандартом IEEE 802.5, що використовує кільцеву топологію та метод доступу до кільця з передачею маркера.

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

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

Поясню на прикладі: відкриваючи будь-яку сторінку в інтернеті, сервер (де знаходиться сторінка, що відкривається) пересилає у Ваш браузер дані (гіпертекстовий документ) по протоколу HTTP. Завдяки протоколу HTTP Ваш браузер, отримуючи дані з сервера, знає, як їх потрібно обробити, та успішно обробляє їх, показуючи Вам запитувану сторінку.

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

Не будемо сильно відволікатися, "Мережева модель" потрібна темадля тих, хто хоче стати фахівцем. Ця стаття складається з 3х частин і для Вас, Я постарався написати не нудно, тямуще і коротко. Для отримання подробиць, або отримання додаткового роз'яснення, відпишіться в коментарях внизу сторінки, і я неодмінно допоможу Вам.

Ми, як і в Мережевій Академії Cisco, розглянемо дві мережеві моделі: модель OSI і модель TCP/IP (іноді її називають DOD), а заразом і порівняємо їх.

OSI розшифровується як Open System Interconnection. Російською мовою це звучить так: Мережева модель взаємодії відкритих систем (еталонна модель). Цю модель можна назвати стандартом. Саме цією моделлю дотримуються виробники мережевих пристроїв, коли розробляють нові продукти.

Мережева модель OSI складається з 7 рівнів, причому прийнято починати відлік із нижнього.

Перерахуємо їх:

  • 7. Прикладний рівень (application layer)
  • 6. Представницький рівень чи рівень подання (presentation layer)
  • 5. Сеансовий рівень (session layer)
  • 4. Транспортний рівень (transport layer)
  • 3. Мережевий рівень (network layer)
  • 2. Канальний рівень (data link layer)
  • 1. Фізичний рівень (physical layer)

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

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

Прикладний рівень або рівень додатків (application layer) – це найвищий рівень моделі. Він здійснює зв'язок додатків користувача з мережею. Ці програми нам усім знайомі: перегляд веб-сторінок (HTTP), передача та прийом пошти (SMTP, POP3), прийом та отримання файлів (FTP, TFTP), віддалений доступ (Telnet) тощо.

Представницький рівень

Представницький рівень або рівень подання даних (presentation layer) – він перетворює дані на відповідний формат. На прикладі зрозуміти простіше: ті картинки (всі зображення) які ви бачите на екрані передаються при пересиланні файлу у вигляді маленьких порцій одиниць та нуліків (бітів). Так ось, коли Ви відправляєте своєму другу фотографію електронній пошті, протокол прикладного рівня SMTP надсилає фотографію на нижній рівень, тобто. на рівень Подання. Де Ваша фотка перетворюється на зручний вигляд даних для нижчих рівнів, наприклад на біти (одиниці та нулі).

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

Ось так і працює цей рівень із протоколами (стандартами) зображень (JPEG, GIF, PNG, TIFF), кодувань (ASCII, EBDIC), музики та відео (MPEG) тощо.

Сеансовий рівень

Сеансовий рівень чи рівень сесій(session layer) – як видно з назви, він організує сеанс зв'язку між комп'ютерами. Хорошим прикладом будуть аудіо та відеоконференції, на цьому рівні встановлюється, яким кодеком кодуватиметься сигнал, причому цей кодек повинен бути присутнім на обох машинах. Ще прикладом може бути протокол SMPP(Short message peer-to-peer protocol), за допомогою нього надсилаються добре відомі нам СМСки та USSD запити. І останній приклад: PAP (Password Authentication Protocol) - це старий протокол для відправлення імені користувача та пароля на сервер без шифрування.

Більше про сеансовий рівень нічого не скажу, інакше заглибимося в нудні особливості протоколів. А якщо вони (особливості) Вас цікавлять, пишіть листи мені або залишайте повідомлення в коментарях з проханням розкрити тему докладніше, і нова стаття не змусить себе довго чекати;

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

Транспортний рівень (transport layer) – цей рівень забезпечує надійність передачі від відправника до одержувачу. Насправді все дуже просто, наприклад, ви спілкуєтеся за допомогою веб-камери зі своїм другом або викладачем. Чи потрібна тут надійна доставка кожного біта переданого зображення? Звичайно ні, якщо загубиться кілька бітів з потокового відео Ви навіть цього не помітите, навіть картинка не зміниться (м.б. зміниться колір одного пікселя з 900 000 пікселів, який промайне зі швидкістю 24 кадри в секунду).

А тепер наведемо такий приклад: Вам друг пересилає (наприклад, поштою) в архіві важливу інформацію або програму. Ви завантажуєте собі на комп'ютер цей архів. Ось тут надійність необхідна 100%, т.к. якщо пару біт при закачуванні архіву загубляться – Ви зможете його розархівувати, тобто. витягти необхідні дані. Або уявіть собі відправку пароля на сервер, і в дорозі один біт загубився – пароль вже втратить свій вигляд і значення зміниться.

Таким чином, коли ми дивимося відео в інтернеті, іноді ми бачимо деякі артефакти, затримки, шуми і т.п. А коли ми читаємо текст із веб-сторінки – втрата (або скривання) букв не допустима, і коли завантажуємо програми – теж все проходить без помилок.

На цьому рівні я виокремлю два протоколи: UDP та TCP. UDP протокол (User Datagram Protocol) передає дані без встановлення з'єднання, не підтверджує доставку даних і робить повтори. TCP протокол (Transmission Control Protocol), який перед передачею встановлює з'єднання, підтверджує доставку даних, за необхідності робить повтор, гарантує цілісність та правильну послідовність даних, що завантажуються.

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

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

Мережевий рівень (network layer) – цей рівень визначає шлях, яким дані будуть передані. І, між іншим, це третій рівень Мережевої моделі OSI, а існують такі пристрої, які і називають пристроями третього рівня – маршрутизатори.

Всі ми чули про IP-адресу, ось це і здійснює протокол IP (Internet Protocol). IP-адреса – це логічна адреса в мережі.

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

Як про IP-адресу всі чули і про команду ping – це працює протокол ICMP.

Ті самі маршрутизатори (з якими ми і працюватимемо надалі) використовують протоколи цього рівня для маршрутизації пакетів (RIP, EIGRP, OSPF).

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

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

IEEE (Institute of Electrical and Electronics Engineers – Інститут інженерів з електротехніки та електроніки) визначає канальний рівень двома підрівнями: LLC та MAC.

LLC - керування логічним каналом (Logical Link Control), створений для взаємодії з верхнім рівнем.

MAC – керування доступом до передавального середовища (Media Access Control), створений для взаємодії з нижнім рівнем.

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

Типових представників цьому рівні багато. PPP (Point-to-Point) – це протокол для зв'язку двох комп'ютерів безпосередньо. FDDI (Fiber Distributed Data Interface) – стандарт передає дані на відстань до 200 км. CDP (Cisco Discovery Protocol) – це проприєтарний (власний) протокол, що належить компанії Cisco Systems, за допомогою якого можна виявити сусідні пристрої та отримати інформацію про ці пристрої.

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

Фізичний рівень (physical layer) – найнижчий рівень, що безпосередньо здійснює передачу потоку даних. Протоколи нам усім добре відомі: Bluetooth, IRDA (Інфрачервоний зв'язок), мідні дроти (вита пара, телефонна лінія), Wi-Fi, і т.д.

Висновок

Ось ми розібрали мережеву модель OSI. У наступній частині приступимо до Мережевої моделі TCP/IP, вона менша і протоколи самі. Для успішного складання тестів CCNA треба провести порівняння та виявити відмінності, що й буде зроблено.