Поможем написать учебную работу
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
PAGE \* MERGEFORMAT 12
Організація взаємодії між елементами мережі є складним завданням, тому її розбивають на прості завдання.
Міжнародною організацією по стандартизації (ISO) був запропонований стандарт, який покриває всі аспекти мережевого зв'язку, - це модель взаємодії відкритих систем (OSI).
Відкрита система - це стандартизований набір протоколів і специфікацій, який гарантує можливість взаємодії обладнання різних виробників. Вона реалізується набором модулів, кожний з яких вирішує просте завдання усередині елемента мережі. Кожний з модулів пов'язаний з одним або декількома іншими модулями. Розв'язок складного завдання має на увазі певний порядок проходження розв'язку простих завдань, при якому утворюється багаторівнева ієрархічна структура. Це дозволяє будь-яким двом різним системам зв'язуватися незалежно від їхньої основної архітектури.
Якщо дві мережі побудовані з дотриманням принципів відкритості, то це дає наступні переваги[1]:
Модель OSI визначає різні рівні взаємодії систем, дає їм стандартні імена й указує, які функції повинен виконувати кожний рівень. Вона була розроблена на підставі великого досвіду, отриманого при створенні комп'ютерних мереж, в основному глобальних.
Мережева взаємодія встановлюється тоді, коли їх програмне забезпечення відповідного рівня моделі OSI може взаємодіяти між собою. В моделі OSI засоби взаємодії ділять на сім рівнів:
Обмін інформацією між модулями відбувається на основі певних угод, які називаються інтерфейсом. При передачі повідомлення модуль верхнього рівня реалізує свою частину завдання, додає до заголовок вхідного повідомлення і передає змінене повідомлення на обслуговування на нижчий рівень.
Заголовки додаються до початку переданих даних на рівнях 6, 5, 4, 3 і 2. На рівні 2 крім заголовків додаються кінцеві мітки (закінчення). На рівні 1 повний комплект перетвориться до форми, яка може бути передана до прийомного пристрою. З іншого боку, при прийманні повідомлення нижчий рівень після обробки своєї частини повідомлення видаляє його повідомлення, що залишилося та передає вищому рівню. Проходження даних і мережевої інформації вниз через рівні пристрою передачі й назад через рівні пристрою приймання робиться можливим за допомогою інтерфейсів і протоколів між кожною парою суміжних рівнів.
Інтерфейс визначає формат і електричні параметри сигналів обміну між модулями різних рівнів. Протокол описує логічні процедури обробки повідомлення з метою приведення його до форми, зрозумілої цьому ж рівневі на вузлі абонента. Чіткі інтерфейси й протоколи забезпечують модульність, а реалізація функцій кожного рівня може бути оновлена або вилучена, не вимагаючи змін рівнів, що перебувають вище або нижче його.
Верхні рівні OSI майже завжди реалізовуються в програмному забезпеченні, більш низькі рівні - комбінація апаратних засобів і програмного забезпечення, крім фізичного рівня, який є апаратним.
Найменування рівнів і розподіл функцій між ними наступний.
Фізичний рівень (Physical Layer) забезпечує побітове транспортування кадрів між вузлами по необхідному фізичному середовищу передачі. Фізичний рівень визначає наступні процедури й функції, які фізичні пристрої й інтерфейси повинні виконувати в ситуаціях, що виникають при передачі інформації:
Канальний рівень (Data Link Layer) реалізує механізми виявлення й корекції помилок, що виникають у каналі зв'язку між вузлами. Завдання рівня ланки передачі даних полягають у наступному:
Мережевий рівень (Network Layer) служить для утвору наскрізної транспортної системи між кінцевими пристроями користувача через усі проміжні мережі зв'язку. Він виконує наступні завдання:
Транспортний рівень (Transport Layer) визначає правила транспортування пакетів по мережі. Транспортний рівень спостерігає за доставкою від краю до краю індивідуальних пакетів, він не враховує ніяких залежностей між цими пакетами. Транспортний рівень виконує наступні завдання:
Сеансовий рівень (Session Layer) - мережевий контролер діалогу. Він установлює, підтримує й синхронізує взаємодію між системами, що зв'язуються.
Завдання сеансового рівня наступні:
Відображення рівень (Presentation Layer) займається формою надання інформації нижчим рівням. Завдання представницького рівня наступні:
Прикладний рівень (Application Layer) - це набір протоколів, якими обмінюються хости, що реалізують те саме завдання. Прикладний рівень дає можливість користувачу звертатися до мережі. Він забезпечує інтерфейси користувача й підтримку послуг - електронної пошти, дистанційного доступу до прикладних засобів загальнодоступного керування, баз даних і інших типів розподілених інформаційних ресурсів.
Модель OSI запропонована досить давно, однак протоколи, на ній засновані, використовуються рідко, по-перше, у силу своєї не завжди виправданої складності, по-друге, через існування хоча й не відповідних строго моделі OSI. Тому модель OSI варто розглядати, в основному, як опорну базу для класифікації й зіставлення протокольних стеків.
Cтек TCP/IP був розроблений до появи моделі взаємодії відкритих систем ISO/OSI, хоча він також має багаторівневу структуру, відповідність рівнів стека TCP/IP рівням моделі OSI досить умовна.
В моделі OSI даний стек реалізує усі рівні й ділиться сам на 4 рівні:
На стеку протоколів TCP/IP побудована вся взаємодія користувачів у мережі, від програмної оболонки до канального рівня моделі OSI. По суті це база, на якій зав'язана вся взаємодія. При цьому стек є незалежним від фізичного середовища передачі даних [2].
Рівень hardware (доступу до мережі) - описує те або інше середовище передачі даних. На рівні лежить апаратно-залежне програмне забезпечення, що реалізує поширення інформації на тому або іншому відрізку середовища передавання даних. TCP/IP орієнтований на незалежність від фізичного середовища, ніяких обмежень на програмне забезпечення цих двох рівнів не накладає. Рівень є самим нижнім, він відповідає фізичному й канальному рівням моделі OSI.
Рівень Internetworking (міжмережевий) - це і є протокол IP. Його головне завдання - маршрутизація при доставці інформації від вузла-відправника до вузла-адресата. Друге важливе завдання протоколу IP - це приховання апаратно-програмних особливостей середовища передачі даних і надання вищим рівням керування єдиного, уніфікованого й апаратно незалежного середовища.
До рівня міжмережевої взаємодії належать усі протоколи, пов'язані зі складанням і модифікацією таблиць маршрутизації, такі як протокол визначення адреси ARP (Address Resolution Protocol), протокол визначення мережевої адреси по місці розташування RARP (Reserve Address Resolution Protocol), протоколи збору маршрутної інформації RIP (Routing Internet Protocol) і OSPF (Open Shortest Path First), протокол прикордонної маршрутизації BPG (Border Gateway Protocol), міжмережевий протокол керування групами IGMP (Internet Group Message Protocol), а також протокол міжмережних керуючих повідомлень ICMP (Internet Control Message Protocol).
Рівень Transport (транспортний) включає два протоколи: протокол керування передачею (TCP) і протокол користувацьких датаграм (UDP).
UDP і TCP - транспортні протоколи рівня, які відповідають за доставку повідомлення від процесу до іншого процесу.
Рівень Application (прикладний) у стеку протоколів TCP/IP еквівалентний об'єднанню сеансового, представницького й прикладного рівня в моделі OSI.
За довгі роки використання в мережах різних країн і організацій стек TCP/IP нагромадив велику кількість протоколів і сервісів прикладного рівня. Прикладні програми, що працюють зі стеком TCP/IP, можуть також виконувати функції рівнів представницького й частково сеансового моделі OSI.
Кожний рівень має справу з однією певною стороною взаємодії мережевих пристроїв. При передачі даних від прикладної прогами в мережу транспортний, міжмережевий, фізичний рівень послідовно інкапсулюють дані свого пакета, таке включення протоколу до протоколу часто повторно застосовується й у рамках того самого рівня керування.
Основним протоколом стеку є протокол Інтернету (IP), яким користується IP модуль для комутації повідомлень з одного інтерфейсу на іншій.
IP протокол передачі датаграм, що не забезпечує надійність і не орієнтований на з'єднання, обслуговує передачу з найкращими з можливих показників, але без гарантій, тобто означає, що IP не гарантує ніяких показників, не проводить перевірку помилок або відстеження якості передачі інформації. При такому принципі мережеві ресурси виділяються по можливості. IP припускає ненадійність основних рівнів і здійснює передачу інформації до кінцевого пункту без усяких гарантій. Якщо надійність є важливою, IP може сполучатися з надійними протоколами, такими як TCP.
Основні характеристики [4]:
Vers (версія). 4-х бітове поле, що містить номер версії протоколу IP (номер поточної версії рівна 4).
Hleng (довжина заголовка). 4-х бітове поле, що містить довжину заголовка IP датаграми в 32-бітних словах. Мінімальна (і типова) довжина заголовка - п'ять слів.
Service type (тип обслуговування). Байт, що містить набір критеріїв, що визначають тип обслуговування IP датаграми:
нормальна, 1 - низька затримка);
якому повинні відправлятися IP датаграми (0 - низька, 1 висока);
нормальна, 1 - висока надійність);
На практиці в більшості реалізацій протоколу IP дане поле майже завжди рівне 0.
Total length (довжина датаграми). Двухбайтове поле, що містить довжину (у байтах) усьої IP датаграми, включаючи довжину заголовка. Максимальна довжина IP датаграми (включаючи заголовок) 65535 байт.
Id (ідентифікатор). Двухбайтове поле, що містить унікальний ідентифікатор IP датаграми, що приписується йому вузлом, що посилає. Це поле використовується для розпізнавання фрагментів одної IP датаграми.
Flag (DF, MF). Біти, використовувані при обробці фрагментованих IP датаграм:
Fragmentation offset (зсув фрагмента). 13 бітне поле, використовується тільки в IP датаграмах, що є фрагментом вихідної IP датаграми. Це поле містить зсув даних, що втримуються в IP фрагменті, стосовно початку даних вихідного IP датаграми.
TTL (час життя). Однобайтове поле, що створюють IP датаграми вузлом мережі кількістю одиниць часу життя IP датаграм в мережі.
Next protocol (наступний протокол). Поле розміром у байт, що містить ідентифікатор протоколу більш високого рівня, для якого призначені дані датаграми.
Header checksum (контрольна сума заголовка). Двухбайтове поле, що містить контрольну суму заголовка IP датаграми (даних IP датаграми контрольна сума не підраховується, контролювати дані завдання протоколів транспортного рівня).
Source addres and distination addres (адреса джерела й адреса приймача). Чотирьохбайтові IP адреси вузлів мережі.
IP options (додаткові дані заголовка). Послідовність полів довільної довжини, що описують необов'язкові дані заголовка. Такі дані використовуються для спеціальних цілей: маршрут, що пропонується, пройдений маршрут, тимчасові мітки, таємність, прапор закінчення.
Padding (дані вирівнювання). Дані, що не мають змісту включаються в заголовок тільки для вирівнювання його довжини до границі чотирьохбайтового слова.
На мережевому рівні потрібно унікально ідентифікувати кожний пристрій в мережі, щоб забезпечити зв'язок між усіма пристроями. Встановлення з'єднання між двома й більш вузлами відбувається на основі обробки адресної інформації, яка в міру необхідності обробляється пристроями 3-го рівня в маршрутизаторах. До адреси пред'являються наступні вимоги:
Ідентифікатор, використовуваний на рівні IP набору протоколу TCP/IP, щоб ідентифікувати кожний пристрій, підключений до мережі. Адреса IP - двійкова адреса на 32 біта, яка унікально й універсально визначає підключення вузла або маршрутизатора до мережі. Два пристрої в мережі ніколи не можуть мати одної адреси.
У мережах TCP\IP використовуються три різні рівні адрес: фізична адреса (середовище передачі), інтернет-адреса (IP) та адреса порта. Кожна адреса належить заданому рівню TCP/IP архітектури.
Фізична адреса (Media Access Control - Mac адреса) використовується для встановлення з'єднання в локальній мережі (підмережі). Ця адреса збігається з номером мережевого пристрою й жорстко встановлюється заводом-виготовлювачем з діапазону відведених йому адрес. Записується у вигляді шістнадцятиричних чисел, розділених двокрапкою. Фізичні адреси можуть бути індивідуальні і групові, або широкомовні. Деякі мережі підтримують усі три типи адрес, а не підтримують групове розсилання або широкомовно передають фізичні адреси.
Адреса IP необхідна для універсальних служб зв'язку, які не залежать від основних фізичних мереж. Фізичні адреси не адекватні в міжмережевому середовищі, де різні мережі можуть мати різні формати адрес. Необхідна універсальна система адресації, у якій кожний вузол може бути ідентифікований унікально, незалежно від основної фізичної мережі. Для цієї мети застосовуються IP адреси. Інтернет адреса в цей час складається з 32 біт. Вона може унікально визначити вузол, підключений до мережі. Ніякі два вузла в мережі не можуть мати ту саму IP адресу.
Адреса IP і фізична адреса необхідна для порції даних, що переміщаються від джерела до вузла пункту призначення. Однак прибуття в пункту призначення - не кінцева мета обміну повідомленнями даних. Система, яка передає тільки дані від одного вузла до іншого, не може вважатися закінченою. Кінцева мета мережі - комутація процесу, що працює з іншим процесом. Для цих процесів, що виникають одночасно в архітектурі TCP/IP мітка, призначувана процесу, названа адресою порту. Адреса порту в TCP/IP довжиною 16 бітів.
IP адреса являє собою чотирьохбайтове число, старші (крайні ліві) біти якого визначають клас IP адреси. Для класів A, B і C чотири байти адреси діляться між ідентифікатором (netID) мережі й ідентифікатором (hostID) вузла в мережі. Мережі класів A, B і C абсолютно рівноправні й відрізняються лише припустимою кількістю вузлів у них. Ідентифікатори вузлів, що складаються із одних нульових або одиничних бітів мають спеціальний сенс:
IP адреса з нульовим ідентифікатором вузла використовується для позначення мережі в цілому;
IP адреса з ідентифікатор вузла у вигляді одиничних бітів є широкомовною (broadcast) адресою.
Кожний вузол у мережі має, принаймні, один унікальний IP адрес. Крім класів A, B і C існують ще два класи IP адрес D і E. Клас D використовується для організації багатоадресного (multicast) режиму посилки повідомлень: IP пакет, що посилає по IP адресі класу D, доставляється всім вузлам мережі, що мають зазначений ідентифікатор групи вузлів.
Для забезпечення гнучкості при створенні й адмініструванні мереж різного розміру було введене поняття "підмережа"[6]. Така можливість забезпечується спеціальною бітовою маскою (netmask), асоційованою з IP адресою й визначає розподіл бітів IP адреси між ідентифікатором підмережі й ідентифікатором вузла.
Мережу можна розділити на кілька частин, підмереж, можливі причини для такого розподілу:
Привязка та конфігурація адрес. Оскільки IP є незалежним від природи і внутрішньої адресації фізичних підмереж, виникає завдання зіставлення адрес фізичних підмереж (канального рівня) і IP адрес (мережевого рівня). Це завдання вирішують протоколи ARP і RARP. В окремих випадках потрібно присвоїти хосту IP адресу. Таке конфігурування виконують протоколи BOOTP і DHCP.
ARP (Address Resolution Protocol) протокол визначення адрес зіставляє 32 розрядні IP адреси фізичним адресам підмережі.
RARP (Reverse Address Resolution Protocol) [7] протокол зворотного визначення адрес зіставляє IP адреси фізичному, застосовується, якщо вузол А з попереднього прикладу не знає власної IP адреси.
Результатом роботи протоколів BOOTP (Bootstrap) і DHCP (Dynamic host configuration protocol) є конфігурування IP адрес
Протокол BOOTP [8] забезпечує початкове завантаження бездискових робочих станцій, мережевих принтерів і т.п.
Протокол DHCP [9] базується на BOOTP, але розширює його можливості у двох відносинах:
таблицях.
Протокол керуючих повідомлень ICMP (Internet Control Message Protocol) [11] відіграє роль транспортного протоколу для керуючої й діагностичної інформації, якої обмінюються між собою IP, TCP або UDP модулі.
Транспортний рівень ухвалює потоки даних або повідомлення та упаковує дані в IP датаграму й передає в мережу. Сервіс негарантованої доставки одиничних повідомлень забезпечує транспортний протокол UDP (User Datagram Protocol), а сервіс із надійною доставкою забезпечує протокол TCP
Протокол керування передачею TCP (Transmission Control Protocol) базується на можливостях надаваних міжмережевим протоколом IP. Основне завдання TCP - забезпечення надійної передачі даних у мережі.
Взаємодія партнерів з використанням протоколу TCP будується в три стадії:
установлення логічного з'єднання;
обмін даними;
закриття з'єднання.