Видеонаблюдение всегда жило между двумя крайностями:
желанием видеть картинку прямо сейчас
и желанием видеть картинку идеально
И вот уже четыре десятилетия инженеры спорят, какой протокол лучше:
UDP — быстрый, дерзкий и прямолинейный,
или TCP — аккуратный, надёжный и педантичный.
По сути, это спор между гонщиком и бухгалтером.
Один доставляет данные быстро.
Другой — доставляет всё до последнего байта.
В CCTV эти два персонажа до сих пор живут бок о бок, потому что задачи видеонаблюдения редкиely требуют только скорость или только надёжность: всегда нужен баланс.
Немного истории: от ARPANET к камерам на подъездах
Когда в 70–80-х разрабатывались TCP и UDP, видеонаблюдение существовало только в аналоговом виде. Никто не думал, что когда-нибудь по этим протоколам будут летать мегапиксельные потоки с IP-камер.
Но их философии идеально вписались в будущее CCTV.
TCP родился первым (1974–1978)
Задача TCP была проста:
делать интернет надёжным даже при хаосе в сети.
Протокол должен был:
гарантировать доставку пакетов;
отслеживать утерянные данные;
обеспечивать контроль перегрузки;
выстраивать соединение «клиент–сервер»;
быть устойчивым на нестабильных каналах.
По сути, TCP создавался как «вежливый дипломат» интернет-трафика.
UDP появился чуть позже (1980)
UDP был создан из протеста:
«Дайте способ передавать данные быстро и без церемоний».
Он:
не проверяет доставку,
не выстраивает соединений,
не восстанавливает потерянные пакеты,
не контролирует перегрузку.
По сути — это «почтовая открытка», а TCP — «заказное письмо с уведомлением».
Кто бы мог подумать, что спустя 40 лет CCTV-индустрия станет строиться именно на этом дуэте.
Почему видеонаблюдение использует оба протокола
Потому что видеонаблюдение — странная смесь:
тут важны и скорость, и надёжность;
тут бывают отличные каналы, а бывают ужасные;
тут важна синхронизация аудио и видео;
и одновременно важна устойчивость к перегрузкам.
И разные задачи требуют разных подходов.
UDP в видеонаблюдении: герой низкой задержки
UDP используется там, где главное — реальное время.
Где применяется:
RTSP over UDP (классика камер)
RTP-потоки в системах реального времени
WebRTC (медиа-протокол SRTP)
Видеодомофоны, тревожные каналы, PTZ-управление с обратным видео
Причины использовать UDP:
1. Минимальная задержка
UDP не ждёт подтверждений.
Пакет ушёл — и всё.
Для операторов важно видеть то, что происходит сейчас, а не запись 5 секунд назад.
2. Камера продолжает стримить, даже если связь нестабильна
В TCP при потере пакета всё стопорится, пока пропавший кусок не будет запрошен заново.
В UDP пропуски игнорируются: картинка «проседает», но поток живой.
3. Меньше накладных расходов
UDP ≈ 15–20% экономии трафика по сравнению с TCP.
Для слабых каналов это критично.
Минусы UDP в CCTV
1. Потерянные пакеты — потерянные навсегда
Нет повторной отправки = артефакты, рывки, квадратики.
2. Нет встроенной защиты от перегрузок
Если сеть забилась — пакеты полетят в мусор.
3. Видео может «разваливаться» при сильных потерях
Особенно на высоких битрейтах.
TCP в видеонаблюдении: надёжный бухгалтер
TCP используется там, где важно:
качество архива,
точность данных,
воспроизводимость,
сохранность каждого кадра.
Где применяется:
RTSP over TCP (Interleaved)
ONVIF/HTTP для передачи снимков и метаданных
Видеозапись в облако
Воспроизведение архивов
Передача аналитики, триггеров, карт, PTZ-команд
В критичных системах, где боевая запись должна быть идеальной, TCP — обязательный.
Плюсы TCP в CCTV
1. Идеальное воспроизведение данных
Для архива это важно: вы не хотите, чтобы запись преступления состояла из кубиков и дыр.
2. Автоматическое восстановление пакетов
Даже если сеть глючит — картинка восстанавливается.
3. Контроль перегрузки
TCP сам замедлится, если канал забит.
UDP просто начнёт терять.
Минусы TCP в видеонаблюдении
1. Высокая задержка
Любая потеря пакета = задержка.
На мобильных сетях задержка TCP может достигать 500–2000 мс.
2. TCP страдает на плохих Wi-Fi и LTE
Каждая проблема приводит к тормозам и фризам.
3. Риск «залипания» потока
Если одна сторона не отвечает — соединение может висеть неопределённо долго.
Как фаерволлы видят TCP и UDP: влияние на видеонаблюдение
Фаерволлы любят порядок.
И любят блокировать то, что выглядит хаотично.
TCP для фаервола — предсказуем
понятные порты (80, 443, 554);
есть handshake;
есть состояние (stateful);
легко отслеживать соединения.
Поэтому TCP реже блокируется случайно.
UDP для фаервола — подозрительный
UDP — stateless.
Он не устанавливает соединений.
Пакеты летят как пули.
Для фаервола это выглядит как:
DoS,
потоковое видео,
вредоносный трафик.
Поэтому:
NAT может терять возвращающиеся пакеты;
фаерволлы могут гасить UDP-трафик по тайм-ауту;
корпоративные сети часто режут UDP полностью.
Вот почему WebRTC всегда использует STUN/TURN и может падать в TURN-ретрансляцию (что дорого и медленно).