
- •Глава 14 – Транспортный уровень.
- •14.0 Введение.
- •14.0.1 Почему я должен выполнить этот модуль?
- •14.0.2 Что я буду изучать в этом модуле?
- •14.1 Передача данных
- •14.1.1 Роль транспортного уровня
- •14.1.2 Функции транспортного уровня
- •14.1.3 Протоколы транспортного уровня
- •14.1.4 Протокол управления передачей (tcp)
- •14.1.5 Протокол пользовательских датаграмм (udp)
- •14.1.6 Соответствующий протокол транспортного уровня для соответствующего приложенияНачало формы
- •14.1.7 Проверьте ваше понимание темы - Передача данныхНачало формы
- •14.2 Обзор протокола tcp
- •14.2.1 Функции протокола tcp
- •14.2.2 Заголовок протокола tcp
- •14.2.3 Поля заголовка tcp
- •14.2.4 Приложения, использующие протокол tcp
- •14.2.5 Проверьте свое понимание темы - Обзор tcp
- •14.3 Обзор протокола udp
- •14.3.1 Функции протокола udp
- •14.3.2 Заголовок протокола udp
- •14.3.3 Поля заголовка udp
- •14.3.4 Приложения, использующие протокол udp
- •14.3.5 Проверьте свое понимание темы - Обзор udp
- •14.4 Номера портов
- •14.4.1 Несколько отдельных сеансов передачи данных
- •14.4.2 Пары сокетов
- •14.4.3 Группы номеров портов
- •14.4.4 Команда netstat
- •14.4.5 Проверить ваше понимание темы - Номера портов
- •14.5 Обмен данными по протоколу tcp
- •14.5.1 Процессы tcp-сервера
- •14.5.2 Установление tcp-соединения
- •14.5.3 Прекращение tcp-соединения
- •14.5.4 Анализ трехстороннего квитирования tcp
- •14.5.5 Видеоролик. Трехэтапное квитирование tcp
- •14.5.6 Проверьте ваше понимание темы - Процесс связи tcp
- •14.6 Надежность и управление потоком передачи данных
- •14.6.1 Надежность tcp - гарантированная и упорядоченная доставка
- •14.6.2 Видеоролик. Надежность tcp: порядковые номера и подтверждения
- •14.6.3 Надежность tcp: потеря данных и повторная передача
- •14.6.4 Видеоролик. Надежность tcp: потеря данных и повторная передача
- •14.6.5 Управление потоком tcp. Размер окна и подтверждения
- •14.6.6 Управление потоком tcp - максимальный размер сегмента (mss)
- •14.6.7 Управление потоком tcp. Предотвращение перегрузок
- •14.6.8 Проверьте свое понимание темы — надежность и управление потоком
- •14.7 Обмен данными по протоколу udp
- •14.7.1 Udp: низкие накладные расходы или надежность?
- •14.7.2 Сборка датаграмм udp
- •14.7.3 Процессы и запросы udp-сервера
- •14.7.4 Процессы udp-клиента
- •14.7.5 Проверьте ваше понимание темы - Процесс связи udp
- •14.8 Практика и контрольная работа модуля
- •14.8.1 Packet Tracer. Обмен данными с использованием tcp и udp
- •14.8.2 Что я изучил в этом модуле?
- •14.8.3 Контрольная по модулю - Транспортный уровень
14.1.6 Соответствующий протокол транспортного уровня для соответствующего приложенияНачало формы
В некоторых приложениях потеря части данных во время передачи по сети может быть допустима для приложения, но при этом задержки передачи являются недопустимыми. Таким приложениям лучше использовать протокол UDP, поскольку он требует меньших накладных расходов. Протокол UDP более предпочтителен, например, для потоковой передачи аудио и голосовой связи по IP-протоколу (VoIP). Пересылка подтверждений и повторная передача могут замедлить доставку данных.
UDP также используется приложениями запросов и ответов, где данные минимальны, и повторная передача может быть выполнена быстро. Например, служба доменных имен (DNS) использует UDP для этого типа транзакций. Клиент запрашивает адреса IPv4 и IPv6 для известного доменного имени с DNS-сервера. Если клиент не получает ответ в течение заданного периода времени, он просто отправляет запрос снова.
Например, если один или два сегмента видеопотока, передаваемого в режиме реального времени, не будут доставлены, это вызовет кратковременные помехи при передаче изображения. В таком случае возможно искажение изображения или звука, однако, пользователь этого может и не заметить. Если бы устройству назначения приходилось повторно запрашивать потерянные данные, для их повторной отправки пришлось бы задержать весь поток, что привело бы к значительному снижению качества звука или изображения. В этом случае лучше отобразить видео, насколько качественно, насколько это получится сделать, используя уже полученные сегменты, и пожертвовать надежностью.
Для других приложений важно, чтобы все данные поступали и чтобы они могли быть обработаны в правильной последовательности. Для этих типов приложений TCP используется в качестве транспортного протокола. Например, таким приложениям, как базы данных, веб-обозреватели и почтовые клиенты, необходимо, чтобы все отправленные данные поступили на узел назначения в своем первоначальном состоянии. Отсутствие какой-либо информации может привести к повреждению данных, которые в таком случае будут переданы не полностью или будут не читаемыми. Например, при доступе к банковской информации через Интернет важно убедиться, что вся информация отправлена и получена правильно.
На основании этих требований разработчики приложений должны определить, какой транспортный протокол подходит для них лучше всего. Видео может быть отправлено по протоколу TCP или UDP. Приложения для потоковой передачи сохраненного аудио и видео используют протокол TCP. Приложение использует TCP для выполнения буферизации, определения пропускной способности и контроля перегрузки, чтобы лучше контролировать работу пользователя.
Видео и голос в режиме реального времени обычно используют UDP, но могут также использовать TCP или оба UDP и TCP. Приложение для видеоконференций может использовать UDP по умолчанию, но поскольку многие брандмауэры блокируют UDP, приложение также может быть отправлено по протоколу TCP.
Приложения для потоковой передачи сохраненного аудио и видео используют протокол TCP. Например, если ваша сеть неожиданно не в состоянии обеспечить пропускную способность, необходимую для просмотра фильма по запросу, приложение приостанавливает воспроизведение видео. В это время в окне проигрывателя может отображаться сообщение о буферизации данных. В это время протокол TCP пытается восстановить поток. После того как порядок всех сегментов восстановлен, а пропускная способность сети находится на минимально необходимом уровне, протокол TCP возобновляет сеанс связи, чтобы продолжить воспроизведение.
В таблице на рисунке представлено краткое описание различий протоколов TCP и UDP.