3
Модель OSI. Функціональні рівні моделі OSI. Основні принципи архітектури відкритих систем.
Організація взаємодії між пристроями у мережі є складною задачею. Як відомо, для розв'язання складних задач використовується універсальний прийом - декомпозиція, тобто поділ однієї складної задачі на декілька простіших задач-модулів. Процедура декомпозиції поєднує в собі чітке визначення функцій кожного модуля, що розв'язує окрему задачу, і інтерфейс між ними. У результаті досягається логічне спрощення задачі, а крім того з'являється можливість модифікації окремих модулів без зміни іншої частини системи.
При декомпозиції часто використовують багаторівневий підхід. Він полягає в наступному. Всю множину модулів поділяють на рівні. Рівні утворюють ієрархію, тобто мають вищерозташовані та нижчерозташовані рівні. Множину модулів, що складають кожний рівень, сформовано таким чином, що для виконання своїх задач вони звертаються із запитами тільки до модулів безпосередньо прилежного нижчерозташованого рівня. З іншої сторони, результати роботи всіх модулів, що належать деякому рівню, можуть бути передані тільки модулям сусіднього вищерозташованого рівня. Така ієрархічна декомпозиція задачі передбачає чітке визначення функції кожного рівня та інтерфейсів між рівнями.
На початку 80-х років ряд міжнародних організацій по стандартизації - ISO, ITU-T та деякі інші - розробили модель, яка відіграла значну роль у розвитку мереж. Ця модель називається моделлю взаємодії відкритих систем OSI, (Open System Interconnection). У моделі OSI засоби взаємодії поділяються на сім рівнів.
Еталонна модель взаємодії відкритих систем має на меті визначати абстрактні межі, всередині яких можуть розроблятися стандарти. Конкретні системи розробляються на базі цих стандартів. Надзвичайно важливо розуміти різницю між архітектурою та конкретною реалізацією. Треба чітко усвідомити, що багаторівнева архітектура зовсім не обов'язково приводить до багаторівневої реалізації. Для того, щоб це відбулося, система має бути спроектована та реалізована як багаторівнева система.
Рис. 1.3.1. Еталонна модель взаємодії відкритих систем.
Як і в системах телеобробки, основним, з точки зору користувача, є прикладний, сьомий рівень.
Модель OSI описує тільки системні засоби взаємодіі, що реалізуються операційною системою, системними утілітами, системними апаратними засобами. Модель не поєднує засоби взаємодії прикладних програм кінцевих користувачів. Свої власні протоколи взаємодії прикладні програми користувачів реалізують звертаючись до системних засобів. Тому необхідно відрізняти рівень взаємодії прикладних програм кінцевих користувачів і прикладний рівень.
Цей рівень забезпечує виконання прикладних процесів користувачів і визначає семантику, тобто смисловий зміст інформації, якою обмінюються відкриті системи у процесі їх взаємодії. З цією метою даний рівень, крім протоколів взаємодії прикладних процесів, підтримує протоколи передачі файлів, віртуального терміналу, електронної пошти та їм подібні. Всі інші рівні зв’язують прикладні процеси, розміщені на верхньому рівні, з фізичним середовищем передавання, що розташоване на найнижчому рівні. Одиниця даних, якою оперує прикладний рівень, звичайно називається повідомленням (message). Існує велика кількість служб прикладного рівня. Як приклад протоколів прикладного рівня можна навести: NCP у операційній системі Novell NetWare, SMB у Microsoft Windows NT, NFS, FTP i TFTP, що входять до стеку протоколів ТСР/ІР.
Слід також мати на увазі, що прикладна програма кінцевого користувача може взяти на себе функції деяких верхніх рівнів моделі OSI. Наприклад, деякі СУБД мають вбудовані засоби віддаленого доступу до файлів. У цьому випадку додаток, виконуючи доступ до віддалених ресурсів, не використовує системну файлову службу, він обходить верхні рівні OSI і звертається напряму до системних засобів, відповідальних за транспортування повідомлень по мережі, які розташовуються на нижчих рівнях моделі OSI.
Наступний (шостий) рівень називається рівнем подання (даних). Він визначає єдиний для всіх відкритих систем синтаксис інформації, що передається, і виконує перетворення даних між пристроями з різними форматами даних (наприклад, з ANCII у EBCDIC. Необхідність цього рівня обумовлена різною формою подання інформації в мережі передачі даних і комп'ютерах. Даний рівень відіграє важливе значення у забезпеченні "відкритості" систем, дозволяючи їм спілкуватися між собою незалежно від внутрішньої мови і гарантує, що інформація, яка передається прикладним рівнем однієї системи, буде зрозуміла прикладному рівню іншої системи. На цьому рівні може виконуватися шифрування та дешифрування даних, завдяки якому захист інформації під час обміну данимизабезпечується відразу для всіх прикладних служб. Прикладом такого протоколу є протокол Secure Socket Layer (SSL), який забезпечує захист інформації під час обміну даними для протоколів прикладного рівня стека ТСР/ІР.
П'ятий рівень називають сеансовим тому, що основним його призначенням є організація сеансового зв'язку між прикладними процесами, розташованими в різних абонентських системах. На даному рівні створюються порти для прийому і передачі повідомлень і організуються з'єднання - логічні канали між процесами. Необхідність протоколів даного рівня визначається відносною складністю мережі передачі даних і прямуванням забезпечити достатньо високу надійність передачі інформації.
На сеансовому рівні визначається, яка з сторін є активною на даний момент, а також надає засоби синхронізації. Останні дозволяють організовувати контрольні точки у довгих передачах, щоб у випадку відмови можна було повернутися назад до останньої контрольної точки, не починаючи всю передачу даних спочатку. На практиці небагато прикладних програм застосовують сеансовий рівень і він рідко реалізується у вигляді окремих протоколів, хоч функції цього рівня часто поєднують з функціями прикладного рівня і реалізують у одному протоколі.
Четвертий рівень – транспортний рівень відкритих систем – відповідає за прозоре передавання інформації надійним та економічно вигідним способом між об’єктами (ПК) сеансового рівня. Транспортний рівень звільняє об’єкти сеансового рівня від проблем реального транспортування даних. Він також оптимізує послуги