Встречается на собеседованиях • сегодня

Как работает TCP протокол

TCP (Transmission Control Protocol) — это надежный потоковый протокол транспортного уровня, обеспечивающий доставку данных без ошибок и в правильном порядке.

Основные принципы:

  1. Установка соединения (3-way handshake):

    • Клиент отправляет SYN
    • Сервер отвечает SYN-ACK
    • Клиент подтверждает ACK
  2. Надежная передача:

    • Сегментирование данных и нумерация пакетов.
    • Подтверждение (ACK) получения и повторная отправка при потере.
    • Контроль перегрузки (алгоритмы вроде Slow Start).
  1. Закрытие соединения (4-way handshake):
    • Одна сторона отправляет FIN, другая подтверждает ACK.
    • Затем вторая сторона отправляет свой FIN, получает ACK.

Пример на Python (клиент-сервер):

python
# Сервер
import socket
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind(('localhost', 12345))
s.listen(1)
conn, addr = s.accept()  # Ожидание соединения

# Клиент
client = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
client.connect(('localhost', 12345))  # Инициация TCP-рукопожатия

TCP гарантирует целостность данных, но добавляет накладные расходы на установку соединения и контроль передачи.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы