Введение

Протокол компьютерной сети

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

История

RTSP был разработан компаниями RealNetworks, Netscape и Колумбийским университетом. Первый проект был представлен в IETF в октябре 1996 года компаниями Netscape и Progressive Networks, после чего Хеннинг Шульцрин из Колумбийского университета представил "RTSP՚" ("RTSP prime") в декабре 1996 года. Эти два проекта были объединены для стандартизации рабочей группой MMUSIC WG (Multiparty Multimedia Session Control Working Group) Целевой группы по инженерной работе в Интернете (IETF), и рабочей группой были опубликованы дальнейшие проекты. Предлагаемый стандарт для RTSP был опубликован как RFC 2326 в 1998 году. RTSP 2.0 был опубликован как RFC 7826 в 2016 году в качестве замены RTSP 1.0. RTSP 2.0 основан на RTSP 1.0, но не обеспечивает обратную совместимость, за исключением базового механизма согласования версий, и по-прежнему имеет статус Предлагаемого стандарта.

RTP

Передача потоковых данных сама по себе не является задачей RTSP. Большинство RTSP-серверов используют протокол транспортировки в реальном времени (RTP) в сочетании с протоколом управления в реальном времени (RTCP) для передачи медиапотоков. Однако некоторые производители реализуют собственные транспортные протоколы. Например, серверное программное обеспечение RTSP от RealNetworks также использовало Real Data Transport (RDT) – проприетарный протокол RealNetworks.

Протокольные директивы

Хотя в некоторых аспектах RTSP схож с HTTP, он определяет управляющие последовательности, полезные для управления воспроизведением мультимедиа. В отличие от HTTP, который не имеет состояния, RTSP является протоколом с состоянием; при необходимости используется идентификатор для отслеживания параллельных сеансов. Как и HTTP, RTSP использует TCP для установления сквозного соединения, и хотя большинство управляющих сообщений RTSP отправляются от клиента к серверу, некоторые команды передаются в обратном направлении (то есть от сервера к клиенту). Ниже представлены основные запросы RTSP. Также доступны некоторые типичные HTTP-запросы, например OPTIONS. Номер порта транспортного уровня по умолчанию – 554.