TCP (Transmission Control Protocol) — это протокол транспортного уровня, обеспечивающий надежную, ориентированную на соединение доставку данных.
Ключевые аспекты работы:
Трехстороннее рукопожатие (Three-way Handshake):
acknowledgement number = client ISN + 1
).acknowledgement number = server ISN + 1
).Потоковая передача данных: Данные передаются как непрерывный поток байтов, а не отдельные пакеты. TCP сегментирует поток данных в сегменты для передачи.
Нумерация последовательности (Sequence Numbers): Каждый байт в потоке данных имеет уникальный номер. Сегменты содержат номер первого байта, который в них находится (sequence number), и номер подтверждения (acknowledgement number), указывающий на следующий байт, который отправитель ACK ожидает получить.
Подтверждения (Acknowledgements - ACK): Получатель отправляет ACK, чтобы сообщить отправителю, какие данные были успешно получены. Если отправитель не получает ACK в течение определенного времени (тайм-аут), он повторно отправляет сегмент.
Контроль ошибок (Error Control): Используются контрольные суммы (checksums) для проверки целостности данных. Если сегмент поврежден, он отбрасывается, и отправитель ожидает тайм-аута или дублированного ACK для повторной передачи.
Контроль потока (Flow Control): Механизм, используемый для предотвращения переполнения буфера получателя. Получатель сообщает отправителю размер своего окна получения (receive window) в АСК-пакетах. Отправитель может отправить только столько данных, сколько указано в окне.
Контроль перегрузки (Congestion Control): Механизм для определения доступной пропускной способности сети и динамического регулирования скорости передачи данных, чтобы избежать перегрузки сети. Включает алго
TCP (Transmission Control Protocol) — это протокол транспортного уровня, обеспечивающий надежную, ориентированную на соединение доставку данных.
Ключевые аспекты работы:
Трехстороннее рукопожатие (Three-way Handshake):
acknowledgement number = client ISN + 1
).acknowledgement number = server ISN + 1
).Потоковая передача данных: Данные передаются как непрерывный поток байтов, а не отдельные пакеты. TCP сегментирует поток данных в сегменты для передачи.
Нумерация последовательности (Sequence Numbers): Каждый байт в потоке данных имеет уникальный номер. Сегменты содержат номер первого байта, который в них находится (sequence number), и номер подтверждения (acknowledgement number), указывающий на следующий байт, который отправитель ACK ожидает получить.
Подтверждения (Acknowledgements - ACK): Получатель отправляет ACK, чтобы сообщить отправителю, какие данные были успешно получены. Если отправитель не получает ACK в течение определенного времени (тайм-аут), он повторно отправляет сегмент.
Контроль ошибок (Error Control): Используются контрольные суммы (checksums) для проверки целостности данных. Если сегмент поврежден, он отбрасывается, и отправитель ожидает тайм-аута или дублированного ACK для повторной передачи.
Контроль потока (Flow Control): Механизм, используемый для предотвращения переполнения буфера получателя. Получатель сообщает отправителю размер своего окна получения (receive window) в АСК-пакетах. Отправитель может отправить только столько данных, сколько указано в окне.
Контроль перегрузки (Congestion Control): Механизм для определения доступной пропускной способности сети и динамического регулирования скорости передачи данных, чтобы избежать перегрузки сети. Включает алго
Register or sign in to get access to full answers for all questions from the question bank.