Ця стаття є дзеркальною статтею машинного перекладу, будь ласка, натисніть тут, щоб перейти до оригінальної статті.

Вид: 11976|Відповідь: 0

[Мережевий протокол] Тристоронній процес рукостискання в протоколі TCP

[Копіювати посилання]
Опубліковано 05.01.2015 12:07:30 | | |
1. Протокол рукостискання TCP

У протоколі TCP/IP протокол TCP забезпечує надійні сервіси з'єднання шляхом тристороннього рукостискання для встановлення з'єднання.

Перше рукостискання: Під час встановлення з'єднання клієнт надсилає син-пакет (syn=j) на сервер і переходить у стан SYN_SEND, очікуючи підтвердження сервером.

Друге рукостискання: Коли сервер отримує пакет SYN, він повинен підтвердити SYN клієнта (ack=j+1), а також надіслати пакет SYN (syn=k), тобто пакет SYN+ACK, після чого сервер переходить у стан SYN_RECV.

Третє рукостискання: Клієнт отримує пакет SYN+ACK від сервера і надсилає пакет підтвердження ACK (ack=k+1) на сервер.

Після трьох рукостискань клієнт і сервер починають передавати дані, і в наведеному процесі є кілька важливих понять:

Нез'єднана черга: У протоколі тристороннього рукопотискання сервер підтримує нез'єднану чергу, яка відкриває запис для кожного SYN-пакета клієнта (syn=j), що вказує, що сервер отримав SYN-пакет, і надсилає підтвердження клієнту, очікуючи підтвердження від клієнта. З'єднання, ідентифіковане цими записами, перебуває у стані Syn_RECV на сервері, і коли сервер отримує пакет підтвердження від клієнта, запис видаляється, і сервер переходить у стан ВСТАНОВЛЕНО.
Параметр Backlog: Вказує максимальну кількість непідключених черг.

Час повторної передачі SYN-ACK Якщо сервер надсилає пакет SYN-ACK і не отримує пакет підтвердження клієнта, сервер виконує першу повторну передачу, чекає певний час без отримання пакета підтвердження клієнта і виконує другу повторну передачу. Зверніть увагу, що час очікування кожного повторного проходу не обов'язково однаковий.

Час виживання напівз'єднання: означає максимальний час, протягом якого запис у черзі напівз'єднання зберігається, тобто максимальний час від моменту, коли сервіс отримує пакет SYN, до моменту, коли пакет підтверджується як недійсний, а часове значення — це сума максимального часу очікування для всіх пакетів запитів на повторну передачу. Іноді ми також називаємо напівзв'язаний час виживання SYN_RECV часом виживання.





Попередній:Програмне забезпечення зламає поширені інструкції асемблеру
Наступний:Основи процесу тристороннього рукостискання в TCP
Застереження:
Усе програмне забезпечення, програмні матеріали або статті, опубліковані Code Farmer Network, призначені лише для навчання та досліджень; Вищезазначений контент не повинен використовуватися в комерційних чи незаконних цілях, інакше користувачі несуть усі наслідки. Інформація на цьому сайті надходить з Інтернету, і спори щодо авторських прав не мають до цього сайту. Ви повинні повністю видалити вищезазначений контент зі свого комп'ютера протягом 24 годин після завантаження. Якщо вам подобається програма, будь ласка, підтримуйте справжнє програмне забезпечення, купуйте реєстрацію та отримайте кращі справжні послуги. Якщо є будь-яке порушення, будь ласка, зв'яжіться з нами електронною поштою.

Mail To:help@itsvse.com