Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
102
Добавлен:
05.03.2016
Размер:
2.22 Mб
Скачать

Лекція 18 Протоколи середнього та висого рівнів мереж.

З’єднання без налагодження зв’язку та з попереднім налагодженням. Connectionless and connection-oriented delivery

Більшість мережевих систем використовують Connectionless систему доставки пакетів. Різні пакети можуть йти різними шляхами до свого отримувача. Потім порядок пакетів відновлюється на отримувачі. В Connectionless системах отримувач не повідомляється перед тим як він має отримати дані. Хорошим прикладом такої системи є поштова система.

В connection-oriented системах налагоджується з’єднання між від силачем та отримувачем перед тим як будь-які дані будуть відіслані. Прикладом такої системи є телефонна система.

Також Connectionless мережеві процеси відносять до packet-switched процесів. Різні пакети можуть комутуватись по різних шляхах. Пристрої, такі як роутер роблять рішення по вибору шляху базуючись на різних критеріях.

connection-oriented процеси часто відносять до circuit-switched процесів. З’єднання з отримувачем налагоджується і передача даних відбувається. Всі пакети рухаються по одному і тому ж фізичному чи віртуальному колі.

Протокол керування передачею даних ТСР – основний транспортний протокол стеку протоколів ТСР/IP. Він описаний у документі RFC793 [22]. Протокол ТСР забезпечує надійну передачу даних, спираючись на основи протоколу IP. Він здійснює передачу пакетів із попереднім установленням логічних з’єднань. На протокол ТСР, зокрема, покладається задача керування потоками та контроль перевантажень. Це припускає узгодження швидкості передачі з технічними характеристиками проміжних вузлів і продуктивністю РС-одержувача. Перед відправленням дані буферизуються, а дані, що надходять, також буферизуються засобами протоколу ТСР. Протокол ТСР активно використовується більшістю прикладних програм Internet, зокрема, протоколами прикладного рівня, такими як HTTP, FTP, SMTP та інш.

Протокол ТСР входить до складу транспортних протоколів, підтримуваних мережною ОС Microsoft Windows NT 5.0.

Формат заголовка

Протокол ТСР повинен забезпечувати надійну передачу потоку даних, спираючись при цьому на ненадійний сервіс транспортування д/г, наданий протоколом IP [22]. З часом до протоколу ТСР постійно додаються розширення та з’являються його сучасні реалізації. Цей протокол використовує тільки один тип протокольного блоку даних (PDU), який зветься сегментом ТСР. Сегмент складається з заголовка та поля даних. На рис. 7.8показано формат заголовка сегмента ТСР.

0 1 15 31

1

Порт відправника 16 біт

Порт одержувача 16 біт

2

Номер у послідовності даних 32 біт

3

Номер підтвердження 32 біт

4

Зсув даних

4 біт

Резерв

6 біт

Контрольні біти 6 біт

Вікно 16 біт

5

Контрольна сума 16 біт

Покажчик терміновості 16 біт

6

Опції (змінна довжина)

Вирівнювання до 32 біт

ПОЛЕ ДАНИХ

Рис. 7.8. Формат заголовка сегмента ТСР

Мінімальна довжина заголовка 20 байт (5 32-бітних слів). Розглянемо призначення полів.

Поле “Номер у послідовності”(Sequence Number) визначає номер першого байта в черзі (послідовності) байтів у поточному сегменті. Виняток становлять випадки, коли встановлені прапори синхронізації SYN. Тоді це поле означає початковий номер у послідовності та перший байт даних має номер у черзі ISN+1.

Поле “Номер підтвердження”(Acknowledgement Number). Містить наступний номер у послідовності підтверджень, які очікує відправник у відповідь на відісланий сегмент.

Поле “Зсув даних”(Data Offset) визначає кількість 32-бітних слів у заголовку ТСР. Тим самим указує початок поля даних. Заголовок протоколу ТСР завжди закінчується на 32-бітній межі.

Поле “Резерв”повинно бути заповнене 0, та призначено для майбутнього розширення протоколу.

Поле “Вікно”містить розмір вікна, що оголошується, в байтах.

Поле “Контрольна сума”(Check Sum) розраховується за сегментом, при цьому визначається 16-бітне доповнення всіх 16-бітних слів у заголовку та полі даних. Якщо сегмент містить непарну кількість байт, то він буде доповнений нулями праворуч до утворення 16-бітного слова. Контрольна сума враховує також і 96-бітний псевдозаголовок протоколу ТСР. Псевдозаголовок включає наступні поля з заголовка протоколу IP: IP-адреси відправника та одержувача, протокол і довжину сегмента. За допомогою псевдозаголовка протокол ТСР захищає (страхує) себе від помилкової доставки д/г протоколом IP.

Поле “Покажчик терміновості”(Urgent Point) повідомляє поточне значення покажчика терміновості. Ця додатна величина визначає зсув відносно номер у черзі даного сегмента. Даний покажчик повідомляє номер наступного блока за терміновими даними. Це поле використовується спільно з контрольним бітом URG.

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

Для визначення призначення більшості полів призначені контрольні біти (див. рис. 7.9).

Біт

1

2

3

4

5

6

Скор. познач.

URG

ACK

PSH

RST

SYN

FIN

Призначення поля

Покажчик терміновості задіяний

Поле номер ПТВ задіяний

Увімкнена функція проштовхування

Перезавантаження

Синхронізація номерів у черзі ввімкнена

Даних для передачі немає

Рис. 7.9. Контрольні біти

Прапори PSH (Push) та URG (Urgent) реалізують дві служби протоколу ТСР: просування (проштовхування) потоку даних і сигналізацію про термінові дані. Зв’язок модуля протоколу ТСР і ПП здійснюється за допомогою спеціального інтерфейсу. Якщо користувач ПП формує команду SEND для передачі блока даних модулю протоколу ТСР, то він поміщає ці дані в буфер відправлення. Якщо при цьому було встановлено прапор PSH, то будь-які дані, що залишилися в буфері, включаючи і тільки-но поміщені у нього, будуть негайно послані. Дані в сегменті проходять через установлене логічне з’єднання до точки входу в модуль протоколу ТСР і зберігаються в буфері прийому, який асоціюється з цим з’єднанням. Якщо вхідні дані помічені прапором PSH, то вони разом із даними вже наявними в буфері, негайно доставляються за командою RECEIVE.

Документ RFC793 визначив тільки першу опцію – максимальний розмір сегмента 64 КБ (216).

Соседние файлы в папке Знайшов_на_компі_в_501-2014-06-05