Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
KONSPEKT.doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
2 Мб
Скачать
☆

2. Номери портів tcp

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

Деякі протоколи вищих рівнів, наприклад, SMTP, TELNET або FTP, стандартизовані в системі протоколів TCP/IP, використовують однакові (але різні для кожного протоколу) номери портів у всіх впровадженнях TCP/IP. Такі “призначені” номери портів називають “добре відомими портами” (well-known ports), а відповідні стандартні застосування – “добре відомими послугами” (well-cnown services). Призначення добре відомих портів і контроль за ними здійснюється органом

Internet Assigned Number Authority (IANA).

У більшості систем призначені порти можуть вживатися тільки системними процесами або програмами привілейованих користувачів. Призначені добре відомі порти охоплюють номери від 0 до 1023. Порти з номерами в діапазоні від 1024 до 65535 не контролюються IANA і можуть вживатися у більшості систем для звичайних програм користувачів.

Конфлікту між двома різними застосуваннями, які пробують використати ті самі номери портів на одній станції, уникають, приписуючи цим застосуванням висилати запит про наявний порт до локального TCP/IP. Оскільки номер порта виділяється динамічно, то ці номери портів можуть відрізнятися від одного виклику застосування до іншого. Конкретніше, для встановлення TCP-сполучення процес повідомляє програмне забезпечення TCP, що він очікує на сполучення на певному номері порта (добре відомому або ні). За означенням такий процес називають сервером. Процес-клієнт, який потребує сполучення зі сервером, запитує своє локальне програмне забезпечення TCP про виділення для нього невикористаного номера порта (в діапазоні 1024..65535) і встановлення сполучення. Як тільки сполучення встановлене, то ці два процеси можуть комунікуватися між собою. Оскільки клієнт встановлює сполучення, то він не потребує вживати добре відомий номер порта, тому програмне забезпечення TCP випадковим чином виділяє для нього один з невикористаних номерів у діапазоні 1024..65535.

3. Сполучення tcp

Важливою абстракцією TCP є ідея, що сполучення визначене парою кінцевих пунктів цього сполучення. Кінцевий пункт – це пара чисел <станція, порт>. Наприклад, якщо станція 149.144.21.3 (клієнт) доручає електронну пошту до станції 149.144.21.60 (сервер), то сполучення може бути визначене двома кінцевими пунктами:

<149.144.21.3, 2437> і <149.144.21.60, 25>

Зауважимо, що TCP-порт 25 є добре знаним портом для дорученняелектронної пошти.

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

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]