МАРК РЕГНЕРУС ДОСЛІДЖЕННЯ: Наскільки відрізняються діти, які виросли в одностатевих союзах
РЕЗОЛЮЦІЯ: Громадського обговорення навчальної програми статевого виховання ЧОМУ ФОНД ОЛЕНИ ПІНЧУК І МОЗ УКРАЇНИ ПРОПАГУЮТЬ "СЕКСУАЛЬНІ УРОКИ" ЕКЗИСТЕНЦІЙНО-ПСИХОЛОГІЧНІ ОСНОВИ ПОРУШЕННЯ СТАТЕВОЇ ІДЕНТИЧНОСТІ ПІДЛІТКІВ Батьківський, громадянський рух в Україні закликає МОН зупинити тотальну сексуалізацію дітей і підлітків Відкрите звернення Міністру освіти й науки України - Гриневич Лілії Михайлівні Представництво українського жіноцтва в ООН: низький рівень культури спілкування в соціальних мережах Гендерна антидискримінаційна експертиза може зробити нас моральними рабами ЛІВИЙ МАРКСИЗМ У НОВИХ ПІДРУЧНИКАХ ДЛЯ ШКОЛЯРІВ ВІДКРИТА ЗАЯВА на підтримку позиції Ганни Турчинової та права кожної людини на свободу думки, світогляду та вираження поглядів
Контакти
Тлумачний словник Авто Автоматизація Архітектура Астрономія Аудит Біологія Будівництво Бухгалтерія Винахідництво Виробництво Військова справа Генетика Географія Геологія Господарство Держава Дім Екологія Економетрика Економіка Електроніка Журналістика та ЗМІ Зв'язок Іноземні мови Інформатика Історія Комп'ютери Креслення Кулінарія Культура Лексикологія Література Логіка Маркетинг Математика Машинобудування Медицина Менеджмент Метали і Зварювання Механіка Мистецтво Музика Населення Освіта Охорона безпеки життя Охорона Праці Педагогіка Політика Право Програмування Промисловість Психологія Радіо Регилия Соціологія Спорт Стандартизація Технології Торгівля Туризм Фізика Фізіологія Філософія Фінанси Хімія Юриспунденкция |
|
|||||||
Лекція 6. Протоколи транспортного рівня: TCP, UDP, стек протоколів TCP/IP. Управління TCP з’єднанням.
TCP називають надійни, орієнтований на з'єднання транспортний протокол мережного рівня з властивостями, орієнтованими на управління з'єднанням та забезпечення надійності для обслуговування. TCP не схожий на UDP – це протокол, орієнтований на потік. В UDP процес (прикладна програма) посилає велику порцію байтів UDP для доставки, UDP додає свій власний адрес до цієї порції даних, яка тепер називається дейтаграмою, і доставляє її IP для передачі. Процес може доставляти кілька порцій даних до UDP, але UDP обробляє кожну порцію незалежно, "не дивлячись" на зв'язок між ними. TCP дозволяє створити процес, що передає інформацію, доставляти дані як потік байт, створити процес прийому і отримувати дані як потік байтів. TCP створює середовище, де здається, що два процеси з'єднані уявної "трубою", яка переносить їх дані по мережі Інтернет. Уявна середу зображена на Рис. 5.1 передавальний процес виробляє потік байтів, а прийомний процес "поглинає" його.
Рис. 5.1. Передача через TCP потоку байтів У зв'язку з тим що процеси передачі і прийому можуть виробляти і споживати дані на різних швидкостях, TCP потребує буферної пам'яті для накопичення. Є два буфера, передачі і прийому, для кожного напрямку. (Зауважимо, що ці буфери також застосовуються в TCP-механізмі управління потоком і контролем над помилками.) Один із шляхів реалізації буфера – використовувати буферні регістри зі зворотним зв'язком однобайтові сегментами, як це показано на Рис. 5.1. Для простоти ми вказали два буфери з невеликим обсягом байт. Зазвичай буфери містять сотні або тисячі байт пам'яті, в залежності від реалізації. Рис. 5.2 показує рух даних в одному напрямку. На передавальній стороні буфер має три типи ділянок. Біла секція – порожній ділянку, яка може заповнюватися за допомогою процесу передачі (виробник). Сіра область містить байти, які передані, але на них ще не отримано підтвердження. TCP зберігає ці байти в буфері, поки не прийме підтвердження. Зафарбована темно-сірим кольором ділянка містить байти для передачі TCP. Однак, як ми побачимо пізніше в цій лекції, TCP може послати тільки частину цієї зафарбованої секції; це може відбутися через уповільнення процесу прийому або через перевантаження мережі. Також зауважимо, що після того як байти сірого ділянки підтверджені, ділянка відновлюється і стає доступною для використання процесом передачі.
Рис. 5.2. Передающий и принимающий буферы Ось чому ми показуємо буфер зі зворотним зв'язком. Обробка буфера на стороні приймача проста. Буфер зі зворотним зв'язком поділяється на дві області (показання білим і темно-сірі кольором). Біла область складається з порожньої ділянки, заповнюваного байтами, отриманими по мережі. Секції темного кольору містять байти, призначені для процесу на стороні прийому. Коли байти прийняті процесом на стороні прийому, ділянка відновлюється для повторного використання і додається до загального безлічі порожніх ділянок.
На транспортному рівні TCP групує кілька байтів в пакет, званий сегментом. TCP додає заголовок до кожного сегмента (з метою контролю) і доставляє сегмент на IP-рівень для передачі. Сегмент інкапсулюється і передається в IP-дейтаграми. Сегменти можуть бути отримані випадковим чином, втрачені або спотворені і пошкоджені. Всі ці сегменти обробляються TCP і передаються процесу на стороні прийому, який не підозрює про ці дії. Рис. 5.3. показує, як сегменти з байтів переносяться в буфера.
Зауважимо, що сегменти можуть відрізнятися розміром. Реально сегменти переносять сотні, якщо не тисячі байт. TCP пропонує повне дуплексне обслуговування, де дані можуть рухатися в обох напрямах одночасно. Кожен TCP тому має буфер прийому і передачі і посилає сегменти в обидва напрямки. TCP, на відміну від UDP, – протокол, орієнтований на з'єднання. Коли процес на стороні посилає і приймає дані від іншого процесу на стороні B, необхідно провести наступні дії: 1. TCP на стороні інформує TCP на стороні B і отримує підтвердження від сторони В. Зауважимо, що це не фізичне, а віртуальне з'єднання. TCP-сегмент інкапсулюється в IP-дейтаграму і може посилати дані в будь-якому порядку або втратити їх, або спотворити, або передати повторно. Кожна дейтаграма може використовувати різний шлях для досягнення пункту призначення. Фізичного з'єднання не відбувається. TCP створює середовище, орієнтовану на потік у кожному напрямку, в якій він бере відповідальність за доставку байтів в заданому порядку на іншу сторону.TCP – достовірний транспортний протокол. Він використовує механізм підтвердження для перевірки збереження і нормальності прибувають даних.
TCP нумерує всі байти даних, які передаються в з'єднанні. Нумерація залежить від кожного напрямку. Коли TCP отримує байти даних від процесу і накопичує їх у буферах передачі, він нумерує їх. Нумерація не обов'язково починається від 0 – вона починається з випадкового числа. TCP генерує випадковий номер між 0 і 2 ^ 32-1 для номера першого байта. Наприклад, якщо випадає випадковий номер 1057 і всього надсилається 6000 байт, байти нумеруються від 1057 до 7056. Після того як байти пронумеровані, TCP призначає порядковий номер для кожного сегмента, який надсилається. Порядковий номер для кожного сегмента – це номер першого байта, який переноситься в цьому сегменті. Читайте також:
|
||||||||
|