Протокол TCP | Курс “Компьютерные сети”
Видеолекция по протоколу TCP.
Лекции по курсу “Компьютерные сети” – https://goo.gl/0aIOuf
TCP (Transmission Control Protocol, протокол управления передачей) – протокол транспортного уровня стека TCP/IP. Он предоставляет сервис надежной передача потока байт (reliable byte stream). TCP предоставляет следующие гарантии:
– Доставка данных.
– Сохранения порядка следования сообщений.
Транспортная подсистема получает от приложения данные в виде потока байт. Поток разбивается на отдельные части, которые называются сегменты. Сегменты передаются от отправителя к получателю независимо друг от друга. Получатель собирает сегменты и передает принимающему приложению поток байт.
Для гарантии доставки TCP использует подтверждение получения данных. Получатель, после приема очередной порции данных, передает отправителю подтверждения о получении. В случае, если подтверждение не пришло, отправитель передает данные еще раз.
В TCP подтверждается не получение каждого сегмента, а получение нескольких сегментов. Это сделано для увеличения скорости передачи данных: отправитель может передать без остановки несколько сегментов, не дожидаясь прихода подтверждения. Такой тип подтверждения называется кумулятивный: подтверждается получение последнего сегмента, и всех предыдущих. Количество сегментов, которые отправитель может передать без подтверждения, называется размер скользящего окна.
Однако только подтверждения и повторной отправки недостаточно для надежной передачи потока байт. В дополнение к потере данных возможна и другая проблема: нарушение порядка следования сообщений:
– Сегменты приходят в неправильном порядке.
– Сегменты дублируются.
Для сохранения порядка следования сообщений используется нумерация сообщений. Особенность протокола TCP в том, что он нумерует не сегменты, а байты в сегментах. Нумерация сообщений позволяет расставить перепутанные сегменты в правильном порядке, а также не учитывать дублирующийся сегменты.
Перед отправкой данных по TCP необходимо установить соединение. Задачи соединения:
– Убедиться, что отправитель и получатель хотят передавать данные друг другу.
– Договориться о нумерации потока байт.
– Договорится о параметрах соединения (максимальный размер сегмента и т.п.).
После завершения передачи данных соединение TCP разрывается.
Практические занятия по курсу “Компьютерные сети” – https://goo.gl/YP3l83
Мой канал с краткими и понятными объяснениями сложных тем в ИТ и компьютерных науках:
https://goo.gl/kW93MA
Последние сообщения
127 полезных и бесплатных онлайн академий
24.04.2019