Протокол доставки користувацьких дейтаграм UDP

[ виправити ] текст може містити помилки, будь ласка перевіряйте перш ніж використовувати.

скачати

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

Зарезервовані і доступні порти UDP

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

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

Призначення номерів портів прикладним процесам здійснюється або централізовано, якщо ці процеси є популярними загальнодоступні сервіси, типу сервісу віддаленого доступу до файлів TFTP (Trivial FTP) або сервісу віддаленого управління telnet, або локально для тих сервісів, які ще не стали настільки поширеними, щоб за ними закріплювати стандартні (зарезервовані) номера.

Централізоване присвоєння сервісів номерів портів виконується організацією Internet Assigned Numbers Authority. Ці номери потім закріплюються і опубліковуються в стандартах Internet. Наприклад, згаданому вище сервісу віддаленого доступу до файлів TFTP присвоєно стандартний номер порту 69.

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

Мультиплексування і демультиплексирование прикладних протоколів за допомогою протоколу UDP

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

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

Розподіл протоколом UDP надходять від мережевого рівня пакетів між набором високорівневих сервісів, ідентифікованих номерами портів, називається демультиплексування (рисунок 5.1).

Протокол доставки користувацьких дейтаграм UDP

Рис. 5.1.

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

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

Формат повідомлень UDP

Одиниця даних протоколу UDP називається UDP-пакетом або користувача дейтаграмою (user datagram). UDP-пакет складається з заголовка і поля даних, в якому розміщується пакет прикладного рівня. Заголовок має простий формат і складається з чотирьох багатобайтових полів:

UDP source port - номер порту процесу-відправника, UDP destination port - номер порту процесу-одержувача, UDP message length - довжина UDP-пакета в байтах, UDP checksum - контрольна сума UDP-пакета

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


Додати в блог або на сайт

Цей текст може містити помилки.

Програмування, комп'ютери, інформатика і кібернетика | Доповідь
10.6кб. | скачати


Схожі роботи:
Протокол надійної доставки повідомлень TCP
Системи доставки в електронній комерції
Вибір раціонального способу доставки вантажів
Удосконалення адресної доставки БАВ до окремих органів і клітин-мішеней
Формування маршрутів доставки туристів в туристські центри Нідерландів з використанням різних
Використання поліелектролітних мікрокапсул з метою розробки систем адресної доставки біологічеcкі
Протокол розбіжностей
Протокол ТСР
Протокол TACASC
© Усі права захищені
написати до нас