Яндекс.Метрика

Принцип функционирования протоколов UDP и TCP. Часть 2.

Нужны новые клиенты? Тогда Вам рекомендуем посмотреть этот раздел нашего сайта
_____






Мультиплексирование сеансов

Под мультиплексированием сеансов понимается процесс, при котором компьютер с одним IP адресом может поддерживать множество сеансов связи, проходящих одновременно. Сеанс создаётся в тот момент, когда компьютеру-отправителю необходимо переслать данные компьютеру получателю, при этом чаще всего это влечет за собой ответ, но это не обязательное развитие событий. Сеанс создается и управляется в рамках приложения, работающего в IP сети и поддерживающего функциональность с 5 по 7 уровень модели OSI.

Сеанс с негарантированным качеством обслуживания (т.н. best-effort session) – очень простой: параметры сеанса посылаются по протоколу UDP. При сеансе такого типа, данные просто отсылаются по указанному IP адресу с использованием определённых номеров портов. Каждая передача является отдельным событием без запоминания, какие данные переданы, и в случае разрыва связи невозможно точно сопоставить переданные фрагменты.

Когда используется надёжная служба TCP, то до начала передачи данных должно быть установлено соединение между отправителем и получателем сообщения. Протокол TCP «устанавливает» соединение и «договаривается» о параметрах соединения с приёмной стороной. Во время передачи потока данных протокол TCP поддерживает надёжную доставку и, по завершении передачи, «закрывает» соединение.

Например, пользователь компьютера вводит единообразный универсальный локатор ресурсов (universal resource locator – URL) для поискового сервера Yahoo в адресной строке браузера Internet Explorer, после чего открывается сайт Yahoo. He закрывая окно с открытым сайтом, пользователь может открыть браузер опять в новом окне и набрать другой URL (например, поискового сервера Google). He закрывая открытых окон, пользователь может открыть браузер снова и набрать URL для Cisco.com и соответствующий сайт будет открыт. Три сайта открыто одновременно с использованием только одного IP соединения, поскольку сеансовый уровень сортирует запросы на основании номера порта.

Сегментация
Протокол TCP берет порцию данных из уровня приложений и подготавливает её для отправки в сеть. Порция данных разбивается на маленькие сегменты, которые подгоняются под размер MTU (максимальная возможная единица передачи данных -maximum transmission unit) нижележащего сетевого уровня. Так как UDP, является простым протоколом, то он не выполняет проверку или ведение переговоров об установке соединения и предполагает использование процессов тех приложений, с данными которых он будет работать.

Управление потоками данных
Если отправитель сообщения передает данные быстрее, чем может их принять получатель, то приемник вынужден отбрасывать данные, требуя их повторной передачи. Повторная передача тратит сетевой ресурс и ресурс машинного времени, поэтому большинство методов управления потоками данных направлено на увеличение скорости передачи и в тоже время на сокращение числа запросов на повторную передачу.

В протоколе TCP базовое управление потоками реализуется посредством отправки получателем сообщения о подтверждении получения сегмента данных, при этом отправитель не посылает новую часть данных, пока не получит подтверждения о получении предыдущих. Однако, если время на передачу и подтверждения приёма (round-trip time – RTF) существенно, то скорость передачи данных может уменьшиться до неприемлемой величины. Механизм, который носит название «обработка методом окна» (windowing), применяемый совместно с базовым управлением потоками данных увеличивает эффективность использования сети. Обработка методом окна позволяет компьютеру-получателю оповещать передающую сторону о том, как много данных он способен принять до посылки подтверждения компьютеру-отправителю.

Ориентированный на соединение транспортный протокол
В пределах границ транспортного уровня, ориентированный на соединение протокол, такой как TCP, устанавливает сеанс связи и в дальнейшем осуществляет поддержку в течение процесса передачи данных. Как только передача завершена, сеанс связи заканчивается. Эта концепция более подробно будет рассмотрена в пункте «Надёжность в сравнении с негарантированным качеством обслуживания».

Надёжность
По существу, надёжность TCP преследует три главные цели:

распознавание и коррекция потери данных;

распознавание и коррекция дубликатов или принятых в неправильном порядке
данных;

предотвращение перегрузки в сети.

Надежность необходима не во всех случаях. Например, в случае передачи видеопотока при потере пакета и его повторной передаче возникает нарушение очередности приема. Это мешает и запутывает зрителя и не несёт полезной нагрузки. В приложениях реального времени, таких как потоковая передача аудио и видео, отбрасывание пакетов может быть терпимым, если процент отброшенных пакетов достаточно мал.






Заказать звонок
+
Жду звонка!