Перейти до вмістуHisnLabs
← TCP/IP: адреси, порти та підключення

Урок 2 з 4 · 7 хв

Порти, TCP і UDP

Чому одна IP-адреса може запускати сотню розмов одночасно, і чому деякі з цих розмов обмінюють швидкість на надійність.

IP-адреса надсилає пакет на потрібний пристрій. Тут не вказано, яка програма на цьому пристрої має його отримати. Це завдання порту: номер, який повідомляє вашому Mac, яка програма розмовляє. Навчальний центр Cloudflare порівнює це з багатоквартирним будинком: адреса вулиці (IP) надсилає пошту в потрібну будівлю, а номер квартири (порт) – до правильних дверей.

Один зв'язок, багато дверей

Порти дозволяють комп’ютеру розрізняти різні види трафіку, навіть якщо він надходить через те саме Wi-Fi або кабельне з’єднання. Пояснення Cloudflare є прямим: «порти дозволяють комп’ютерам легко розрізняти різні типи трафіку: електронні листи, наприклад, надходять на інший порт, ніж веб-сторінки, навіть якщо обидва потрапляють на комп’ютер через одне Інтернет-з’єднання». Порти містяться в заголовках TCP і UDP, на один рівень вище простої IP-адреси; голий IP-пакет не має місця, щоб сказати, для якого порту він призначений.

Кому який номер дозволено використовувати

Номери портів варіюються від 0 до 65535, і Internet Assigned Numbers Authority (IANA) керує тим, хто який отримає: системні порти (0–1023) призначаються лише через офіційну перевірку, користувацькі або зареєстровані порти (1024–49151) можна зареєструвати для певної служби, а верхній діапазон, 49152–65535, залишається непризначеним для тимчасового використання, як-от зворотна адреса вашого браузера вибирає власний кінець з’єднання.

Джерело: Реєстр назв служби IANA та номера порту транспортного протоколу.
ПортЗареєстрована службаЩо зазвичай використовує
22Безпечна оболонка (SSH)Віддалений доступ через командний рядок
25Проста передача поштиПересилання електронної пошти між поштовими серверами
53Сервер доменних іменDNS-пошуки
80HTTPЗвичайні незашифровані веб-сторінки
443HTTPSЗашифровані веб-сторінки

TCP: повільніше, але нічого не пропадає

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

UDP: швидкий і готовий трохи втратити

Протокол дейтаграм користувача, описаний у RFC 768, приймає протилежний компроміс: він «забезпечує процедуру для прикладних програм для надсилання повідомлень іншим програмам за допомогою мінімального механізму протоколу». Немає рукостискання, гарантії замовлення та автоматичного повторного надсилання. Cloudflare зазначає, що це підходить «особливо для чутливих до часу передач, таких як відтворення відео або DNS-пошук», де скинутий пакет є незначним збоєм, але чекати повторної передачі було б гірше, ніж просто рухатися далі.

Головне

  • Порт — це номер, який повідомляє пристрою, для якої програми чи служби призначений пакет; лише IP-адреса ідентифікує пристрій.
  • IANA керує номерами портів у трьох діапазонах: системні порти (0–1023), порти користувача/зареєстровані (1024–49151) і непризначені динамічні порти (49152–65535).
  • Загальні порти включають 22 (SSH), 25 (пошта), 53 (DNS), 80 (HTTP) і 443 (HTTPS).
  • TCP (RFC 9293) перевіряє та повторно надсилає втрачені дані для надійної, упорядкованої доставки за певні витрати на швидкість.
  • UDP (RFC 768) пропускає ці перевірки швидкості, що відповідає чутливому до часу трафіку, наприклад пошуку відео та DNS.

Перевірте себе

  1. 1. Яку проблему вирішують порти, яку не може вирішити сама IP-адреса?

    • Вони повідомляють мережі, для якої програми на пристрої призначений пакет — Правильно.
    • Вони шифрують з'єднання
    • Вони замінюють потребу в IP-адресі
    • Вони роблять Wi-Fi швидшим

    IP-адреса направляє пакет на пристрій; порт, який міститься в заголовку TCP або UDP, говорить, яка програма на цьому пристрої повинна його обробляти.

  2. 2. Який порт зареєстровано для HTTPS відповідно до реєстру IANA?

    • 21
    • 80
    • 443 — Правильно.
    • 8080

    IANA вказує порт 443 як "https", який використовується для HTTP через TLS/SSL. Порт 80 – це простий, незашифрований HTTP.

  3. 3. Чому RFC 9293 описує TCP як "надійний, у порядку"?

    • Оскільки TCP виявляє втрачені дані та надсилає їх повторно, а також зберігає дані в тому порядку, в якому вони були надіслані — Правильно.
    • Оскільки TCP ніколи не використовує порти
    • Оскільки TCP завжди швидший за UDP
    • Оскільки TCP шифрує все за замовчуванням

    TCP відстежує порядкові номери, щоб виявити прогалини, повторно надсилає відсутні дані та повторно збирає потік байтів у порядку.

  4. 4. Чому DNS-пошук і відтворення відео зазвичай використовують UDP замість TCP?

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

    Cloudflare зазначає, що UDP підходить «особливо для чутливих до часу передач, таких як відтворення відео або пошук DNS», саме тому, що він пропускає рукостискання TCP і накладні витрати на повторну передачу.

Застосуйте на практиці з FireAI

Застосуйте цей урок на своєму Mac.

Джерела

Застосуйте це на своєму Mac

Усі функції безкоштовно на 17 днів, без банківської картки.

Завантажити для Mac Документація