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

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

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

рівні 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 протокол - це протокол міжмережевої взаємодії).

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 адресами.

Дякую! Не допомогло

Модель Open Systems Interconnection (OSI) - це скелет, фундамент і база всіх мережевих сутностей. Модель визначає мережеві протоколи, розподіляючи їх на 7 логічних рівнів. Важливо відзначити, що в будь-якому процесі, управління мережевою передачею переходить від рівня до рівня, послідовно підключаючи протоколи на кожному з рівнів.

Відео: модель OSI за 7 хвилин

Нижні рівні відповідають за фізичні параметри передачі, такі як електричні сигнали. Так - так, сигнали в проводах передаються за допомогою подання до струми :) Токи представляються у вигляді послідовності одиниць і нулів (1 і 0), потім, дані декодуються і маршрутизируются по мережі. Більш високі рівні охоплюють запити, пов'язані з поданням даних. Умовно кажучи, більш високі рівні відповідають за мережеві дані з точки зору користувача.

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


# 01: Фізичний (physical) рівень

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

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

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

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

# 02: Канальний (data Link) рівень

Уявіть, ми отримали фізичний сигнал з першого рівня - фізичного. Це набір напруг різної амплітуди, хвиль або радіочастот. При отриманні, на другому рівні перевіряються і виправляються помилки передачі. На другому рівні ми оперуємо поняттям «фрейм», або як ще кажуть «кадр». Тут з'являються перші ідентифікатори - MAC - адреси. Вони складаються з 48 біт і виглядають приблизно так: 00: 16: 52: 00: 1f: 03.

Канальний рівень складний. Тому, його умовно кажучи ділять на два підрівні: управління логічним каналом (LLC, Logical Link Control) і управління доступом до середовища (MAC, Media Access Control).

На цьому рівні мешкають такі пристрої як комутатори і мости. До речі! Стандарт Ethernet теж тут. Він затишно розташувався на першому і другому (1 і 2) рівнях моделі OSI.

# 03: Мережевий (network) рівень

Йдемо вгору! Мережевий рівень вводить термін «маршрутизація» і, відповідно, IP - адреса. До речі, для перетворення IP - адрес в MAC - адреси і назад використовується протокол ARP.

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

З пристроїв тут живе його величність маршрутизатор :)

Процес, коли дані передаються з верхніх рівнів на нижні називається инкапсуляцией даних, а коли навпаки, наверх, з першого, фізичного до сьомого, то цей процес називається декапсуляціі даних
# 04: Транспортний (transport) рівень

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

  • Трафік чутливий до втрат - немає проблем, TCP (Transmission Control Protocol)! Він забезпечує контроль за передачею даних;
  • Трохи втратимо - не страшно - за фактом, зараз, коли ви читаєте цю статтю, пару пакетів могло і загубитися. Але це не відчувається для вас, як для користувача. UDP (User Datagram Protocol) вам підійде. А якби це була телефонія? Втрата пакетів там критична, тому що голос в реальному часі почне просто «квакати»;
# 05: Сеансовий (session) рівень

Попросіть будь-якого мережевого інженера пояснити вам сеансовий рівень. Йому буде важко це зробити, інфа 100%. Справа в тому, що в повсякденній роботі, мережевий інженер взаємодіє з першими чотирма рівнями - фізичним, канальним, мережевим і транспортним. Решта, або так звані «верхні» рівні відносяться більше до роботи розробників софта :) Але ми спробуємо!

Сеансовий рівень займається тим, що управляє сполуками, або просто кажучи, сесіями. Він їх розриває. Пам'ятайте мем про « НЕ БУЛО ЖОДНОГО РОЗРИВУ»? Ми пам'ятаємо. Так ось, це п'ятий рівень постарався :)

# 06 Рівень представлення (presentation)

На шостому рівні твориться перетворення форматів повідомлень, таке як кодування або стиснення. Тут живуть JPEG і GIF, наприклад. Так само рівень відповідальний за передачу потоку на четвертий (транспортний рівень).

# 07 Рівень додатки (application)

На сьомому поверсі, на самій верхівці айсберга, мешкає рівень додатків! Тут знаходяться мережеві служби, які дозволяють нам, як кінцевим користувачам, серфить простори інтернету. Гляньте, за яким протоколом у вас відкрита наша база знань? Правильно, HTTPS. Цей хлопець з сьомого поверху. Ще тут живуть простий HTTP, FTP і SMTP.

Чи корисна Вам ця стаття?

Будь ласка, розкажіть чому?

Нам шкода, що стаття не була корисна для вас: (Будь ласка, якщо не утруднить, вкажіть з якої причини? Ми будемо дуже вдячні за докладну відповідь. Спасибі, що допомагаєте нам стати краще!

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

Але мета цієї статті - не філософські міркування про методологію навчання. Мені хотілося б представити до уваги початківців ставків то загальнеі головне, від якого, як від грубки, можна танцювати до самим навороченим приватним крамничках. Розуміючи семиуровневую модель OSI і навчившись "дізнаватися" її рівні в уже відомих вам технологіях, ви без зусиль зможете рухатися далі в будь-якому обраному вами напрямку мережевий галузі. Модель 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.

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

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

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

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

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

Характеристика популярних стеків комунікаційних протоколів

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

Існує досить багато стеків протоколів, широко застосовуваних у мережах. Це стеки, є міжнародними і національними стандартами, і фірмові стеки, які поширені завдяки поширеності устаткування тій чи іншій фірми. Прикладами популярних стеків протоколів можуть служити стек IPX / SPX фірми Novell, стек TCP / IP, який використовується в мережі Internet і в багатьох мережах на основі операційної системи UNIX, стек OSI міжнародної організації зі стандартизації, стек DECnet корпорації Digital Equipment і деякі інші.

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

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

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

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

На нижніх рівнях - фізичному і канальному - практично у всіх стеках використовуються одні й ті ж протоколи. Це добре стандартизовані протоколи Ethernet, Token Ring, FDDI і деякі інші, які дозволяють використовувати у всіх мережах одну і ту ж апаратуру.

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

стек OSI

Слід розрізняти стек протоколів OSI і модель OSI. У той час, як модель OSI концептуально визначає процедуру взаємодії відкритих систем, декомпозіруя завдання на 7 рівнів, стандартизує призначення кожного рівня і вводить стандартні назви рівнів, стек OSI - це набір цілком конкретних специфікацій протоколів, що утворюють узгоджений стек протоколів. Цей стек протоколів підтримує уряд США у своїй програмі GOSIP. Всі комп'ютерні мережі, що встановлюються в урядових установах після 1990 року, повинні або безпосередньо підтримувати стек OSI, або забезпечувати засоби для переходу на цей стек в майбутньому. Проте, стек OSI більш популярний в Європі, а не в США, так як в Європі менше встановлено старих мереж, що використовують свої власні протоколи. В Європі також відчувається велика потреба в загальному стеку, так як тут є велика кількість різних країн.

Це міжнародний, незалежний від виробників стандарт. Він може забезпечити взаємодію між корпораціями, партнерами і постачальниками. Ця взаємодія ускладнюється через проблеми з адресацією, ім'ям та безпекою даних. Всі ці проблеми в стеці OSI частково вирішені. Протоколи OSI вимагають великих витрат обчислювальної потужності центрального процесора, що робить їх більш придатними для потужних машин, а не для мереж персональних комп'ютерів. Більшість організацій поки тільки планують перехід до стека OSI. З тих, хто працює в цьому напрямку, можна назвати Військово-морське відомство США і мережу NFSNET. Одним з найбільших виробників, що підтримують OSI, є компанія AT & T. Її мережа Stargroup повністю базується на стеку OSI.

З цілком зрозумілих причин стек OSI на відміну від інших стандартних стеків повністю відповідає моделі взаємодії OSI, він включає специфікації для всіх семи рівнів моделі взаємодії відкритих систем (рис. 1.3).


Мал. 1.3. стек OSI

на стек OSI підтримує протоколи Ethernet, Token Ring, FDDI, а також протоколи LLC, X.25 і ISDN. Ці протоколи будуть детально обговорені в інших розділах посібника.

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

сервіси прикладного рівня включають передачу файлів, емуляцію термінала, службу каталогів і пошту. З них найбільш перспективними є служба каталогів (стандарт Х.500), електронна пошта (Х.400), протокол віртуального терміналу (VT), протокол передачі, доступу та управління файлами (FTAM), протокол пересилки і управління роботами (JTM). Останнім часом ISO сконцентрувала свої зусилля саме на сервісах верхнього рівня.

X.400

- це сімейство рекомендацій Міжнародного консультативного комітету по телеграфії і телефонії (CCITT), в яких описуються системи пересилання електронних повідомлень. На сьогоднішній день рекомендації X.400 є найбільш популярним протоколом обміну повідомленнями. Рекомендації Х.400 описують модель системи обміну повідомленнями, протоколи взаємодії між усіма компонентами цієї системи, а також безліч видів повідомлень і можливості, якими володіє відправник за кожним видом повідомлень, що відправляються.

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

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

Над базою даних імен і адрес визначені наступні операції:

  • читання - отримання адреси за відомим імені,
  • запит - отримання імені по відомим атрибутам адреси,
  • модифікація, що включає видалення і додавання записів в базі даних.

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

протокол VTвирішує проблему несумісності різних протоколів емуляції терміналів. Зараз користувачеві персонального комп'ютера, сумісного з IBM PC, для одночасної роботи з комп'ютерами VAX, IBM 3090 і HP9000 потрібно придбати три різні програми для емуляції терміналів різних типів і використовують різні протоколи. Якби кожен хост-комп'ютер мав би в своєму складі програмне забезпечення протоколу емуляції терміналу ISO, то і користувачеві б знадобилася лише одна програма, яка підтримує протокол VT. У своєму стандарті ISO акумулювала широко поширені функції емуляції терміналів.

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

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

Стек TCP / IP

Стек TCP / IP, званий також стеком DoD і стеком Internet, є одним з найбільш популярних і перспективних стеків комунікаційних протоколів. Якщо в даний час він поширений в основному в мережах з ОС UNIX, то реалізація його в останніх версіях мережевих операційних систем для персональних комп'ютерів (Windows NT, NetWare) є гарною передумовою для швидкого зростання числа установок стека TCP / IP.

Стек був розроблений з ініціативи Міністерства оборони США (Department of Defence, DoD) більше 20 років тому для зв'язку експериментальної мережі ARPAnet з іншими сателітними мережами як набір загальних протоколів для різнорідної обчислювальної середовища. Мережа ARPA підтримувала розробників і дослідників у військових областях. У мережі ARPA зв'язок між двома комп'ютерами здійснювалася з використанням протоколу Internet Protocol (IP), який і до цього дня є одним з основних в стеці TCP / IP і фігурує в назві стека.

Великий внесок у розвиток стека TCP / IP вніс університет Берклі, реалізувавши протоколи стека у своїй версії ОС UNIX. Широке поширення ОС UNIX привело і до широкого поширення протоколу IP і інших протоколів стека. На цьому ж стеку працює всесвітня інформаційна мережа Internet, чий підрозділ Internet Engineering Task Force (IETF) вносить основний вклад в удосконалення стандартів стека, що публікуються в формі специфікацій RFC.

Так як стек TCP / IP був розроблений до появи моделі взаємодії відкритих систем ISO / OSI, то, хоча він також має багаторівневу структуру, відповідність рівнів стека TCP / IP рівням моделі OSI досить умовно.

Структура протоколів TCP / IP приведена на малюнку 1.4. Протоколи TCP / IP поділяються на 4 рівня.

Мал. 1.4. Стек TCP / IP

Найнижчий ( рівень IV ) - рівень міжмережевих інтерфейсів - відповідає фізичному і канальному рівням моделі OSI. Цей рівень в протоколах TCP / IP не регламентується, але підтримує всі популярні стандарти фізичного і канального рівня: для локальних каналів це Ethernet, Token Ring, FDDI, для глобальних каналів - власні протоколи роботи на аналогових комутованих і виділених лініях SLIP / PPP, які встановлюють з'єднання типу "точка - точка" через послідовні канали глобальних мереж, і протоколи територіальних мереж X.25 і ISDN. Розроблено також спеціальна специфікація, що визначає використання технології ATM як транспорт канального рівня.

Наступний рівень ( рівень III ) - це рівень міжмережевої взаємодії, який займається передачею дейтаграм з використанням різних локальних мереж, територіальних мереж X.25, ліній спеціального зв'язку і т. П. В якості основного протоколу мережевого рівня (в термінах моделі OSI) в стеку використовується протокол IP, Який спочатку проектувався як протокол передачі пакетів в складових мережах, що складаються з великої кількості локальних мереж, об'єднаних як локальними, так і глобальними зв'язками. Тому протокол IP добре працює в мережах зі складною топологією, раціонально використовуючи наявність у них підсистем і ощадливо витрачаючи пропускну здатність низькошвидкісних ліній зв'язку. Протокол IP є дейтаграмним протоколом.

До рівня міжмережевої взаємодії відносяться і всі протоколи, пов'язані зі складанням і модифікацією таблиць маршрутизації, такі як протоколи збору маршрутної інформації RIP(Routing Internet Protocol) і OSPF(Open Shortest Path First), а також протокол міжмережевих керуючих повідомлень ICMP(Internet Control Message Protocol). Останній протокол призначений для обміну інформацією про помилки між маршрутизатором і шлюзом, системою-джерелом і системою-приймачем, тобто для організації зворотного зв'язку. За допомогою спеціальних пакетів ICMP повідомляється про неможливість доставки пакета, про перевищення часу життя або тривалості зборки пакета з фрагментів, про аномальні величини параметрів, про зміну маршруту пересилання і типу обслуговування, про стан системи і т.п.

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

Верхній рівень ( рівень I) Називається прикладним. За довгі роки використання в мережах різних країн і організацій стек TCP / IP нагромадив велику кількість протоколів і сервісів прикладного рівня. До них відносяться такі широко використовувані протоколи, як протокол копіювання файлів FTP, протокол емуляції терміналу telnet, поштовий протокол SMTP, використовуваний в електронній пошті мережі Internet і її російської гілки РЕЛКОМ, гіпертекстові сервіси доступу до вилученої інформації, такі як WWW і багато інших. Зупинимося дещо докладніше на деяких з них, найбільш тісно пов'язаних з тематикою даного курсу.

протокол SNMP(Simple Network Management Protocol) використовується для організації мережевого управління. Проблема управління поділяється тут на два завдання. Перше завдання пов'язана з передачею інформації. Протоколи передачі керуючої інформації визначають процедуру взаємодії сервера з програмою-клієнтом, що працює на хості адміністратора. Вони визначають формати повідомлень, якими обмінюються клієнти і сервери, а також формати імен та адрес. Друге завдання пов'язана з контрольованими даними. Стандарти регламентують, які дані повинні зберігатися і накопичуватися в шлюзах, імена цих даних і синтаксис цих імен. У стандарті SNMP визначена специфікація інформаційної бази даних управління мережею. Ця специфікація, відома як база даних MIB (Management Information Base), визначає ті елементи даних, які хост або шлюз повинен зберігати, і допустимі операції над ними.

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

У стеці TCP / IP протокол FTP пропонує найбільш широкий набір послуг для роботи з файлами, проте він є і найскладнішим для програмування. Додатки, яким не потрібні всі можливості FTP, можуть використовувати інший, більш економічний протокол - найпростіший протокол пересилки файлів TFTP(Trivial File Transfer Protocol). Цей протокол реалізує тільки передачу файлів, причому як транспорт використовується більш простий, ніж TCP, протокол без встановлення з'єднання - UDP.

протокол telnetзабезпечує передачу потоку байтів між процесами, а також між процесом і терміналом. Найбільш часто цей протокол використовується для емуляції терміналу віддаленої ЕОМ.

Стек IPX / SPX

Цей стек є оригінальним стеком протоколів фірми Novell, який вона розробила для своєї мережевої операційної системи NetWare ще на початку 80-х років. Протоколи Internetwork Packet Exchange (IPX) і Sequenced Packet Exchange (SPX), які дали ім'я стека, є прямою адаптацією протоколів XNS фірми Xerox, поширених в набагато менше ступеня, ніж IPX / SPX. За кількістю установок протоколи IPX / SPX лідирують, і це обумовлено тим, що сама ОС NetWare займає лідируюче положення з часткою установок в світовому масштабі приблизно в 65%.

Сімейство протоколів фірми Novell і їх відповідність моделі ISO / OSI представлено на малюнку 1.5.

Мал. 1.5. Стек IPX / SPX

на фізичному і канальному рівнях в мережах Novell використовуються всі популярні протоколи цих рівнів (Ethernet, Token Ring, FDDI і інші).

на мережевому рівні в стеці Novell працює протокол IPX, А також протоколи обміну маршрутною інформацією RIPі NLSP(Аналог протоколу OSPF стека TCP / IP). IPX є протоколом, який займається питаннями адресації та маршрутизації пакетів в мережах Novell. Маршрутні рішення IPX засновані на адресних полях в заголовку його пакета, а також на інформації, що надходить від протоколів обміну маршрутною інформацією. Наприклад, IPX використовує інформацію, що поставляється або протоколом RIP, або протоколом NLSP (NetWare Link State Protocol) для передачі пакетів комп'ютера призначення або наступного маршрутизатора. Протокол IPX підтримує тільки дейтаграммний спосіб обміну повідомленнями, за рахунок чого економно споживає обчислювальні ресурси. Отже, протокол IPX забезпечує виконання трьох функцій: завдання адреси, встановлення маршруту і розсилку дейтаграм.

Транспортному уровнюмоделі OSI в стеці Novell відповідає протокол SPX, який здійснює передачу повідомлень з встановленням з'єднань.

на верхніх прикладному, представницькому і сеансовому рівняхпрацюють протоколи NCP і SAP. протокол NCP(NetWare Core Protocol) є протоколом взаємодії сервера NetWare і оболонки робочої станції. Цей протокол прикладного рівня реалізує архітектуру клієнт-сервер на верхніх рівнях моделі OSI. За допомогою функцій цього протоколу робоча станція проводить підключення до сервера, відображає каталоги сервера на локальні букви дисководів, переглядає файлову систему сервера, копіює вилучені файли, змінює їх атрибути і т.п., а також здійснює розподіл мережевого принтера між робочими станціями.

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

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

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

Особливості стека IPX / SPX обумовлені особливостями ОС NetWare, а саме орієнтацією її ранніх версій (до 4.0) на роботу в локальних мережах невеликих розмірів, що складаються з персональних комп'ютерів зі скромними ресурсами. Тому Novell потрібні були протоколи, на реалізацію яких була мінімальна кількість оперативної пам'яті (обмеженою в IBM-сумісних комп'ютерах під управлінням MS-DOS 640 Кбайтами) і які б швидко працювали на процесорах невеликої обчислювальної потужності. В результаті, протоколи стека IPX / SPX донедавна добре працювали в локальних мережах і не дуже - в великих корпоративних мережах, так як занадто перевантажували повільні глобальні зв'язки широкомовними пакетами, які інтенсивно використовуються декількома протоколами цього стека (наприклад, для встановлення зв'язку між клієнтами і серверами).

Ця обставина, а також той факт, що стек IPX / SPX є власністю фірми Novell і на його реалізацію потрібно отримувати у неї ліцензію, довгий час обмежували поширеність його тільки мережами NetWare. Однак до моменту випуску версії NetWare 4.0, Novell внесла і продовжує вносити в свої протоколи серйозні зміни, спрямовані на пристосування їх для роботи в корпоративних мережах. Зараз стек IPX / SPX реалізований не тільки в NetWare, але і в декількох інших популярних мережевих ОС - SCO UNIX, Sun Solaris, Microsoft Windows NT.

Стек NetBIOS / SMB

Фірми Microsoft і IBM спільно працювали над мережевими засобами для персональних комп'ютерів, тому стек протоколів NetBIOS / SMB є їх спільним дітищем. Засоби NetBIOS з'явилися в 1984 році як мережеве розширення стандартних функцій базової системи введення / виводу (BIOS) IBM PC для мережевої програми PC Network фірми IBM, яка на прикладному рівні (рис. 1.6) використовувала для реалізації мережевих сервісів протокол SMB (Server Message Block) .

Мал. 1.6. Стек NetBIOS / SMB

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

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

  • Управління сесіями. Створення і розрив логічного каналу між робочою станцією і мережевими ресурсами файлового сервера.
  • Файловий доступ. Робоча станція може звернутися до файл-серверу з запитами на створення і видалення каталогів, створення, відкриття і закриття файлів, читання і запис у файли, перейменування і видалення файлів, пошук файлів, отримання і установку файлових атрибутів, блокування записів.
  • Сервіс друку. Робоча станція може ставити файли в чергу для друку на сервері і отримувати інформацію про черги друку.
  • Сервіс повідомлень. SMB підтримує просту передачу повідомлень з наступними функціями: послати просте повідомлення; послати широковещательное повідомлення; послати початок блоку повідомлень; послати текст блоку повідомлень; послати кінець блоку повідомлень; переслати ім'я користувача; слід перенаправляти; отримати ім'я машини.

Через велику кількість додатків, які використовують функції API, що надаються NetBIOS, у багатьох мережевих ОС ці функції реалізовані у вигляді інтерфейсу до своїх транспортних протоколів. У NetWare є програма, яка емулює функції NetBIOS на основі протоколу IPX, існують програмні емулятори NetBIOS для Windows NT і стека TCP / IP.

для чого потрібно нам це цінне знання? (Editorial)

Якось раз поставив мені один колега каверзне питання. Ну ось, каже, знаєш ти, що таке модель OSI ... І для чого тобі це потрібно, яка від цього знання практична користь: хіба що повипендріваться перед чайниками? Неправда, користь від цього знання суть системний підхід при вирішенні багатьох пракріческого властивості задач. наприклад:

  • troubleshooting (
виявлення та усунення неполадок)

Приходить до вас як до адміну (досвідченому сетевику) юзер (просто приятель) і каже - у мене тут "не з'єднує". Нема, каже, мережі і все тут. Починаєте розбиратися. Так ось, виходячи з опеньки спостереження за ближніми своїми, я помітила, що дії людини, «не усвідомлює модель OSI в серці своєму", відрізняються характерною хаотичністю: то провід посмикає, то раптом в браузері щось поколупатися. І наводить це часто до того, що рухаючись без направлення такої "спеціаліст" посмикає що завгодно і де завгодно, крім як в області неполадки, убивши купу свого і чужого часу. При усвідомленні ж існування рівнів взаємодії рух буде більш послідовним. І хоча відправна точка може бути різною (в кожній потрапляє мені книзі рекомнедаціі кілька розрізнялися), загальна логічна посилка пошуку несправності така - якщо на рівні Х взаємодія здійснюється коректно, то і на рівні Х-1 швидше за все теж все в порядку. Принаймні для кожного конкретного моментучасу. Виробляючи траблшутінг в IP-мережах особисто я починаю "копати" від другого рівня стека DOD, він же третій рівень OSI, він же Internet Protocol. По-перше тому, що найбільш легко зробити "поверхневий огляд пацієнта" (пацієнт швидше пінгуєтся, чому не пінгуєтся), ну і по-друге, якщо, слава ті Господи, пінгуєтся, можна відкинути малоприємні маніпуляції з тестуванням кабелю, мережевих карт і розборок і іншими приємними речами;) Хоча в особливо важких випадках доведеться починати все-таки з рівня першого, причому найсерйознішим чином.

  • взаєморозуміння з колегами

Для ілюстрування цього пункту приведу вам як приклад таку байку з життя. Одного разу знайомі мої з однієї невеликої фірми покликали мене в гості допомогти розібратися, чому мережу недобре працює, і дати якісь рекомендації з цього приводу. Приходжу я в контору. А у них там виявляється навіть адмін є, званий за старою доброю традицією "програміст" (а взагалі-то він FoxPro в основному займається;) - старої доперебудовної гарту IT-фахівець. Ну я в нього запитую, що у вас за мережу? Він: "У сенсі? Ну просто мережу". Мережа, в загальному, як мережу. Ну я навідні запитання: на мережевому рівні який протокол використовується? Він: "А це ДЕ?" Я уточнюю: "Ну IP або IPX або що там у вас ..." "О" - каже, - "здається так: IPX / ще-там-щось!" До речі, "ще-там-щось", як ви могли помітити, від мережевого рівня трохи вище розташований, ну так не суть ... Що характерно, він цю мережу побудував і навіть зле бідно супроводжував. Тож не дивно що вона зачахнула-то ...;) А знав би про OSI - в 5 хвилин б схемку надряпав - від 10Base-2 до прикладних програм. І не довелося б під стіл лазити - коаксіальні дроти оглядати.

  • вивчення нових технологій

На цьому важливому аспекті я вже зупинялася в передмові і ще раз повторюся: при вивченні нового протоколу слід в першу ж чергу розібратися а) в якому стеку (ах) протоколів його місце і б) в якій саме частині стека і з ким взаємодіє знизу і хто з ним зверху може ... :) І полноя ясність в голові від цього настане. А формати повідомлень та API разновсякіе - ну це вже справа техніки :)

Модель взаємодії відкритих систем OSI (англ. Open System Interconnection) - це набір стандартів взаємодії мережевого обладнання між собою. Також її називають стеком протоколів. Розроблено для того, щоб різні об'єкти мережі незалежно від виробника і типу (комп'ютер, сервер, комутатор, хаб і навіть браузер, що відображає html сторінку) дотримувалися єдині правила роботи з даними і могли успішно здійснювати інформаційний обмін.

Мережеві пристрої бувають різними за функціями і «близькості» до кінцевого споживача - людині або додатком. Тому модель OSI описує 7 рівнів взаємодії, на кожному з яких працюють свої протоколи, неподільні порції даних, пристрої. Розберемо принцип роботи семиуровневой моделі OSI з прикладами.

Мережеві рівні моделі OSI

фізичний

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

Пристрої, що працюють на фізичному рівні моделі ОСІ (OSI Model): повторювачі сигналу, концентратори (хаби). Це найменш «інтелектуальні» пристрої, завданням яких є посилення сигналу або його розгалуження без будь-якого аналізу і модифікації.

канальний

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

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

Також тут вперше спливає поняття адреси. Тут - це MAC (англ. Media Access Control) адреса - шестібайтовий ідентифікатор мережевого пристрою, необхідний для вказівки в кадрах як одержувача і відправника при передачі даних в рамках одного локального сегмента.

Пристрої: мережевий міст (bridge), комутатор. Їх переважне відміну від «нижніх» пристроїв - ведення таблиць MAC адрес по своїх портів і розсилка / фільтрація трафіку вже тільки за необхідними напрямками.

Мережевий

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

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

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

транспортний

Транспортування в цьому випадку мається на увазі логічна (так як за фізичну відповідає 1 щабель стека): встановлення з'єднання з протилежним вузлом на відповідному рівні, підтвердження доставки отриманих даних, контроль їх якості. Так працює протокол TCP (англ. Transmission Control Protocol). Передана порція інформації - блок або сегмент.

Для передачі ж потокових масивів (датаграмм) використовується протокол UDP (англ. User Datagram Protocol).

Адреса - десятковий номер віртуального програмного порту конкретної робочої станції або сервера.

сеансовий

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

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

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

прикладний

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

Приклад роботи мережевої моделі

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

  • на прикладному формується повідомлення: крім фото і тексту до посилці додається інформація про адресу сервера повідомлень (символьне ім'я www.xxxxx.com за допомогою спеціального протоколу перетвориться в десятковий IP адреса), ідентифікатор одержувача на цьому сервері, можливо ще якась службова інформація.
  • на представницькому - фотографія може бути стиснута, якщо, її розмір великий з точки зору месенджера і його налаштувань.
  • сеансовий відстежить логічну підключення користувача до сервера, його статус. Також їм буде контролюватися процес передачі даних після його початку, відстеження сесії.
  • на транспортному дані розбиваються на блоки. Додаються службові поля транспортного рівня з контрольними сумами, опціями контролю помилок і т.д. Одна фотографія може перетворитися в кілька блоків.
  • на мережевому - блоки обертаються службовою інформацією, в якій містяться в тому числі адресу вузла-відправника та адреса IP сервера повідомлень. Саме ця інформація дозволить IP пакетів дійти до сервера, можливо, через весь світ.
  • на канальному, Дані IP пакетів упаковуються в кадри з додаванням службових полів, зокрема MAC адрес. Адреса власної мережевої карти буде поміщений в поле відправника, а в поле одержувача буде поміщений MAC шлюзу знову ж з власних мережевих налаштувань (навряд чи ви перебуваєте з сервером в одній мережі, відповідно MAC його невідомий, а шлюз, наприклад, домашнього роутера - відомий).
  • на фізичному - біти з кадрів будуть трансльовані в радіохвилі, і дійдуть за допомогою wi-fi протоколу до домашнього роутера.
  • Там інформація підніметься по стеку протоколів вже до 3 рівня стека роутера, далі буде вироблено перенаправлення пакетів до маршрутизаторів провайдера. І так далі, поки на сервері месенджера, на самому верхньому рівні повідомлення і фотографія в початкових видах не потраплять на приватне дисковий простір відправника, потім одержувача. І потім почнеться аналогічний шлях інформації вже до адресата повідомлення, коли той вийде в онлайн і встановить сесію з сервером.

Розробка якого не була пов'язана з моделлю OSI.

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

Модель складається з 7-ми рівнів, розташованих один над одним. Рівні взаємодіють один з одним (по «вертикалі») за допомогою інтерфейсів, і можуть взаємодіяти з паралельним рівнем іншої системи (по «горизонталі») за допомогою протоколів. Кожен рівень може взаємодіяти тільки зі своїми сусідами і виконувати відведені тільки йому функції. Детальніше можна подивитися на малюнку.

модель OSI
Тип даних рівень функції
дані 7. Прикладний рівень Доступ до мережних служб
6. Рівень подання Подання та кодування даних
5. Сеансовий рівень Для керування обміном зв'язку
сегменти 4. Транспортний Прямий зв'язок між кінцевими пунктами і надійність
пакети 3. Мережевий Визначення маршруту і логічна адресація
кадри 2. Канальний фізична адресація
біти 1. Фізичний рівень Робота із середовищем передачі, сигналами і двійковими даними

Прикладний (Додатків) рівень (англ. Application layer)

Верхній рівень моделі, забезпечує взаємодію користувача додатків з мережею. Цей рівень дозволяє додаткам використовувати мережеві служби, такі як віддалений доступ до файлів і баз даних, пересилання електронної пошти. Також відповідає за передачу службової інформації, надає додаткам інформацію про помилки і формує запити до рівнем подання. Приклад: HTTP, POP3, SMTP, FTP, XMPP, OSCAR, BitTorrent, MODBUS, SIP

Представницький (Рівень подання) (англ. Presentation layer)

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

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

Щоб зрозуміти, як це працює, уявімо, що є дві системи. Одна використовує для представлення даних розширений двійковий код обміну інформацією EBCDIC, наприклад, це може бути мейнфрейм компанії IBM, а інша - американський стандартний код обміну інформацією ASCII (його використовують більшість інших виробників комп'ютерів). Якщо цим двом системам необхідно обмінятися інформацією, то потрібен рівень уявлень, який виконає перетворення і здійснить переказ між двома різними форматами.

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

Стандарти рівня уявлень також визначають способи представлення графічних зображень. Для цих цілей може використовуватися формат PICT - формат зображень, застосовуваний для передачі графіки QuickDraw між програмами для комп'ютерів Macintosh і PowerPC. Іншим форматом уявлень є тегірованний формат файлів зображень TIFF, який зазвичай використовується для растрових зображень з високою роздільною здатністю. Наступним стандартом рівня уявлень, який може використовуватися для графічних зображень, є стандарт, розроблений Об'єднаною експертною групою по фотографії (Joint Photographic Expert Group); в повсякденному користуванні цей стандарт називають просто JPEG.

Існує інша група стандартів рівня вистав, яка визначає уявлення звуку і кинофрагментов. Сюди входять інтерфейс електронних музичних інструментів MIDI (Musical Instrument Digital Interface) для цифрового представлення музики, розроблений Експертною групою з питань кінематографії стандарт MPEG, який використовується для стиснення і кодування відеороликів на компакт-дисках, зберігання в оцифрованному вигляді і передачі зі швидкостями до 1,5 Мбіт / с, і QuickTime - стандарт, що описує звукові та відео елементи для програм, які виконуються на комп'ютерах Macintosh і PowerPC.

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

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

Транспортний рівень (англ. Transport layer)

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

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

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

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

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

Мережевий рівень (англ. Network layer)

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

Протоколи мережевого рівня маршрутизируют дані від джерела до одержувача.

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

Цей рівень призначений для забезпечення взаємодії мереж на фізичному рівні і контролю за помилками, які можуть виникнути. Отримані з фізичного рівня дані він упаковує у фрейми, перевіряє на цілісність, якщо потрібно виправляє помилки (посилає повторний запит пошкодженого кадру) і відправляє на мережевий рівень. Канальний рівень може взаємодіяти з одним або декількома фізичними рівнями, контролюючи і керуючи цим взаємодією. Специфікація IEEE 802 розділяє цей рівень на 2 підрівні - MAC (Media Access Control) регулює доступ до поділюваного фізичного середовища, LLC (Logical Link Control) забезпечує обслуговування мережного рівня.

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

Фізичний рівень (англ. Physical layer)

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

Модель OSI і реальні протоколи

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

Основна недоробка OSI - непродуманий транспортний рівень. На ньому OSI дозволяє здійснювати обмін даними між додатками (вводячи поняття порту - ідентифікатора додатка), однак, можливість обміну простими датаграму (по типу UDP) в OSI не передбачена - транспортний рівень повинен утворювати сполуки, забезпечувати доставку, управляти потоком і т. П. (По типу TCP). Реальні ж протоколи реалізують таку можливість.

Сімейство TCP / IP

Сімейство TCP / IP має три транспортних протоколу: TCP, повністю відповідний OSI, що забезпечує перевірку отримання даних, UDP, який відповідає транспортному рівню тільки наявністю порту, що забезпечує обмін датаграму між додатками, що не гарантує отримання даних і SCTP, розроблений для усунення деяких недоліків TCP і в який додані деякі нововведення. (В сімействі TCP / IP є ще близько двохсот протоколів, найвідомішим з яких є службовий протокол ICMP, використовуваний для внутрішніх потреб забезпечення роботи; інші також не є транспортними протоколами.)

Сімейство IPX / SPX

У сімействі IPX / SPX порти (звані «сокети» або «гнізда») з'являються в протоколі мережевого рівня IPX, забезпечуючи обмін датаграму між додатками (операційна система резервує частину сокетов для себе). Протокол SPX, в свою чергу, доповнює IPX усіма іншими можливостями транспортного рівня в повній відповідності з OSI.

В якості адреси хоста IPX використовує ідентифікатор, утворений з четирёхбайтного номера мережі (що призначається маршрутизаторами) і MAC-адреси мережевого адаптера.

модель DOD

Стек протоколів TCP / IP, який використовує спрощену четирёхуровневую модель OSI.

Адресація в IPv6

Адреси призначення і джерела в IPv6 мають довжину 128 біт або 16 байт. Версія 6 узагальнює спеціальні типи адрес версії 4 в наступних типах адрес:

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

Як і у версії IPv4, адреси у версії IPv6 поділяються на класи, в залежності від значення декількох старших біт адреси.

Велика частина класів зарезервована для майбутнього застосування. Найбільш цікавим для практичного використання є клас, призначений для провайдерів послуг Internet, названий Provider-Assigned Unicast.

Адреса цього класу має наступну структуру:

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

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

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

Під поле ідентифікатора вузла потрібно виділення не менше 6 байт, для того щоб можна було використовувати в IP-адреси МАС-адреси локальних мереж безпосередньо.

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

критика

Семиуровневая модель OSI критикувалася деякими фахівцями. Зокрема в класичній книзі «UNIX. Керівництво системного адміністратора »Еві Немет та інші пишуть:

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

І ось, коли протоколи ISO були нарешті реалізовані, виявився цілий ряд проблем:
Ці протоколи грунтувалися на концепціях, які не мають в сучасних мережах ніякого сенсу.
Їх специфікації були в деяких випадках неповними.
За своїми функціональними можливостями вони поступалися іншим протоколам.
Наявність численних рівнів зробило ці протоколи повільними і важкими для реалізації.

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