Кратко

  • RFC 9626 выносит за пределы зашифрованной видеонагрузки компактное описание границ кадра, временной независимости, допустимости отбрасывания и слоёв, чтобы RTP-коммутатор принимал решения без расшифровки изображения.
  • SRTP может аутентифицировать метку и зашифровать само расширение. Это подтверждает источник и целостность утверждения, но не его соответствие нагрузке, состоянию зависимостей у получателя или фактически показанному кадру.
  • Надёжная операционная квитанция соединяет согласование, извлечение на стороне отправителя, политику видимости, решение коммутатора, доставку, состояние декодера и результат отображения.

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

Центральный узел не обязательно ошибся в исполнении. Он мог безупречно исполнить неверное описание или правильное описание в уже повреждённом состоянии получателя.

RFC 9626, опубликованный в марте 2025 года со статусом Experimental, решает задачу частных видеоконференций. Центральному RTP-коммутатору всё равно нужно выбирать активного говорящего, переключать потоки и уменьшать число слоёв при перегрузке. Сквозное шифрование не должно ради этого раскрывать ему пиксели.

Расширение Video Frame Marking сообщает только структуру, необходимую для такого действия. Это аккуратное распределение полномочий: посредник может перенаправлять, не получая право видеть содержание. Но ограниченное знание нельзя превращать в свидетельство обо всей цепочке.

За наблюдаемым заголовком остаётся невидимое состояние

Короткая форма содержит S, E, I и D. S и E отмечают первый и последний пакет кадра в слое. I заявляет, что кадр не зависит от более ранних во времени кадров. D заявляет, что отправитель знает: кадр можно удалить, а оставшийся поток останется декодируемым.

Длинная форма добавляет B, TID, LID и TL0PICIDX. TID задаёт относительный временной слой, LID — пространственный слой или слой качества. TL0PICIDX обозначает изображение базового временного слоя либо базовое изображение, от которого зависит улучшение. B отмечает точку синхронизации небазового временного слоя с базой.

Ни один из этих коротких признаков не описывает всю картину. I означает временную независимость, но верхний пространственный слой может нуждаться в нижнем слое того же момента. Большие TID и LID не сообщают абсолютную частоту кадров, разрешение или битрейт. Они также не перечисляют полный граф зависимостей.

Поле B особенно хорошо показывает происхождение знания. RFC предупреждает, что для H.264 и H.265 его не всегда можно надёжно вывести из простой проверки заголовков нагрузки. Реализации может потребоваться внутренний интерфейс кодека. Коммутатор получает готовый бит, но не видит состояние, на основании которого он появился.

Требование к отправителю не проверяет себя само

RFC 9626 требует, чтобы значения расширения представляли сведения, уже содержащиеся в RTP-нагрузке. Для VP8, VP9, H.264 и H.265 определены правила соответствия; будущие форматы должны объяснять отображение своих слоёв в TID и LID. Так создаётся общий смысл для разных реализаций.

Это нормативная обязанность отправителя, а не независимый измерительный прибор у коммутатора.

До шифрования стенд может сопоставить дескриптор нагрузки или внутреннее событие кодека с каждой выданной меткой. После шифрования коммутатор обычно не способен открыть видео и убедиться, что I действительно независим или что D не является нужной ссылкой. Ошибка отображения, устаревшее состояние или регрессия новой версии могут породить неверную метку, которая всё же придёт от подлинного отправителя без искажений.

Аутентификация SRTP даёт сильное, но узкое доказательство: принятый пир отправил эти биты, а несанкционированное изменение не осталось бы незамеченным. Она не превращает утверждение пира в независимое наблюдение фактов кодека. Подлинность происхождения и точность описания — разные свойства.

Поэтому испытания выпуска должны включать отрицательные примеры: предиктивный кадр с I, опорный кадр с D, границы вопреки временным меткам и RTP-маркеру, необъяснимые скачки индексов, точку переключения без нужного пространственного слоя, отсутствие внутреннего сигнала для B. Проверка наличия расширения испытывает оболочку, а не договорённый смысл.

Отправленное решение ещё не дошло до экрана

При перегрузке RFC предлагает отбрасывать кадры D либо самые высокие временные и пространственные слои или слои качества. Новый поток следует начинать в точке, где I установлен во всех необходимых пространственных слоях.

Коммутатор может подтвердить соблюдение этой логики. Но D выражает знание отправителя, а не текущий буфер ссылок получателя после предыдущих потерь. Совместный I даёт допустимую точку входа, однако не гарантирует, что все её пакеты придут до срока воспроизведения или что локальный декодер работает без дефекта.

RFC 9627 добавляет Layer Refresh Request, а FIR может запросить новую внутрикодированную картину. Запрос подтверждает только намерение контура управления. Отдельно нужно увидеть действие кодировщика, доставку обновления, принятие декодером и показ.

Поэтому квитанция строится из последовательности: что было согласовано; какую аутентифицированную метку видел коммутатор; почему он переслал или отбросил пакеты; что фактически прибыло; какие зависимости признал декодер; какой кадр вошёл в окно отображения. «SFU выполнил метку» закрывает вопрос о центральном решении, но не о доставленном опыте.

Явная метка меняет цену утечки

В SRTP расширения заголовка аутентифицируются и могут шифроваться. Если RTP-коммутатор является SRTP-пиром, он читает зашифрованную метку, оставаясь без доступа к сквозным частным медиа. Другие промежуточные устройства на пути её не видят.

Метка может остаться открытой, чтобы дополнительные устройства оптимизировали отбрасывание. Тогда они надёжно получают временную последовательность границ, независимых кадров и изменений слоёв. Без явной метки ключевые кадры иногда удаётся статистически угадать по размеру зашифрованных пакетов: они часто крупнее. Но RFC справедливо отличает вероятностную догадку от точного сигнала.

Следовательно, секретность пикселей не делает поведение видео невидимым. Ритм независимых кадров и переходов между слоями может раскрывать активность. RFC 9335 предоставляет механизм полного шифрования RTP-расширений, а RFC 8871 — контекст конференций с частными медиа. Ни один механизм не выбирает аудиторию, срок хранения и разрешённую цель вместо оператора.

Значение номера существует только внутри согласования

URI urn:ietf:params:rtp-hdrext:framemarking согласуется через extmap по RFC 8285 и получает локальный идентификатор. В другой сессии тот же номер может означать другое расширение; обновление offer/answer способно изменить направление или отключить его.

Одной записи пакетов для последующей проверки недостаточно. Вместе с ней нужны URI, локальный номер, направление, выбор шифрования и период действия. Знакомое расположение битов не доказывает соблюдение RFC 9626, если расширение не было согласовано в этом контексте.

RFC 9628 связывает масштабируемую структуру VP9 с тем же словарём. Новая версия кодировщика может изменить извлечение, а новая версия SFU — потребление. Их следует рассматривать как единую версионируемую поверхность выпуска, даже когда формат на проводе не изменился.

Sources