Мережеві протоколи у галузі відеоспостереження

Все, що має доступ в інтернет, працює завдяки так званим «мережевим протоколам». Кожен з нас знає їх принаймні кілька, можливо і не задумуючись над тим що це саме мережевий протокол. Такий наприклад, як «HTTP (HyperText Transfer Protocol)» – базовий протокол для заходу на веб сторінку, чи «FTP (File Transfer Protocol)» – протокол для передачі, найчастіше скачування файлів в мережі інтернет. Ми вже писали окрему статтю про ONVIF (Open Network Video Interface Forum) – суперважливий для галузі відеоспостереження мережевий протокольний стандарт, що дозволяє синхронізувати роботу пристроїв від різних виробників техніки. Та й насправді сама назва цифрових мережевих камер спостереження «ІР-відеокамера» – є ні що інше як позначення мережевого протоколу – «IP (Internet Protocol)». Це значить, що пристрій, в даному випадку камера спостереження, вписана в інтернет, і має свою ІР-адресу. Про ті мережеві протоколи, які використовуються для передачі відеопотоків по мережі, і не тільки, поговоримо в цьому матеріалі.

Правила і визначення

Насамперед коротке визначення – воно просте: «Мережевий протокол» – набір деяких правил, точніше алгоритмів, які дозволяють пристроям, що підключені до мережі інтернет, коректно обмінюватися даними. Простими словами – якщо нам треба щоб відео, яке записала ІР-камера підключена через Wi-Fi, потрапило на наш відеореєстратор чи сервер, нам потрібно перегнати його з допомогою мережевого протоколу. Але дати команду самій камері на відправлення відео ми зможемо лише через інший мережевий протокол. Отже, що це за протоколи, які активно використовуються в галузі відеоспостереження? Їх насправді дуже багато, причому, зазвичай протокол насправді є кластером, в який входять десятки інших протоколів. Ось чотири таких кластерів і є найважливішими в нашій галузі: RTSPTCPUDPi RTP. Розберемо кожен поокремо.

Функція і пояснення

Отже:

  • Протокол RTSP (real time streaming protocol – потоковий протокол реального часу) – застосовується для керування потоками медіаданих від камер спостереження. Тобто з допомогою цього мережевого протоколу оператор може передавати на камеру базові команди: «старт/стоп», «запис», «пауза» і т.п. тобто сам цей протокол не передає потокове відео по кабелях, і не форматує саме відео перед передачею – взагалі ніяк на нього не впливає. Цим займається подібний протокол – RTСP. Але про нього згодом. А, що стосується RTSP, то нагадаємо, що в його кластер входять такі допоміжні протоколи, як:
    • Play;
    • pause;
    • record і т.п.
  • Протокол ТСР/ІР (Transmission Control Protocol) – ось якраз цей протокол і займається передачею даних в мережі інтернет. Тобто він безпосередньо керує рухом відеопотоку. Що він робить? Від імені пристрою, що буде передавати дані він посилає запит на мережеве з’єднання до пристрою, який буде приймати дані. Далі установлює інтернет з’єднання і контролює його коректну роботу підчас того, як потокове відео переливається скажімо із ІР-відеокамери на сервер. Якщо з’єднання з якихось причин розірвано, то протокол ТСР посилає повторний запит. Коли з’єднання відновлено, протокол контролює щоб усі фрагменти даних були передані, і водночас щоб не було повторів із тією часткою даних, що була передана перед розривом з’єднання. Для потокового відео, яке передається в межах систем відеоспостереження – ця функція протоколу особливо важлива. Для коректної роботи цей протокол задіює допоміжні протоколи, що входять в його кластер. Наприклад такі:
    • IPv6
    • DNS (Domain Name System) – як свідчить сама назва – це система доменних імен. А сам протокол контролює щоб ІР-адреси пристроїв співпадали з іменами хостів. Тобто задіяння цього протоколу потрібне для того щоб легко і швидко знайти ту інтернет адресу (адресу сайту), з яким буде здійснюватися мережеве з’єднання для передачі якихось даних;
    • HTTPS
    • POP3
  • Протокол UDP (User Datagram Protocol) по суті займається тим же що і ТСР (передає потоки відео мережею у вигляді скомпонованих блоків медіа-файлів – так званих «датаграм»), але на значно більших швидкостях. Це його плюс і перевага. Однак його мінус – слабка захищеність і відсутністю контролю за коректною передачею даних. Цей протокол не перевіряє ні коректність мережевого з’єднання, ні втрату пакетів «датаграм», ні їх можливого дублювання. Тобто – як прийшло, так прийшло. Якщо якийсь фрагмент загубився, значить загубився. Передача продовжиться і завершиться без того фрагмента. Звісно, що такий протокол слабо надається для постійної передачі потокового відео з камер спостереження. Але для коротких запитів його швидка і не обтяжена довгими перевірками схема працює дуже вдало. Бо не навантажує сервер зайвими перевірками і перехресним контролем всього процесу передачі. Наприклад власнику системи відеоспостереження потрібен конкретний фрагмент відео, відзнятий всіма наявними камерами із 13.00 до 14.00 годин. Такий запит краще і швидше передавати через протокол UDP.
  • Протокол RTP (Real-time Transport Protocol) потрібен для конкретної передачі потокового відео саме в режимі реального часу. Тобто, цей протокол присвоює кожному фрагменту його тайм код (тобто час, коли цей фрагмент був записаний), а потім контролює щоб цей фрагмент опинився в архіві на сервері не пізніше ніж зазначено в налаштуваннях – цей люфт може бути всього кілька секунд. Тобто протокол RTP подбає, щоб записане відео було передано на накопичувач, і було готове до перегляду фактично в режимі реального часу. Саме завдяки цьому протоколу, точніше присвоєним фрагментам відео тайм кодам, все передане з камери відео «збирається» у правильній послідовності. Це насправді дуже важливо, адже не варто забувати що відео-потік передається від камери на накопичувач у форматах стиснення інформації, таких як MPEG-4 чи H.264. і вже на сервері чи відеореєстраторі воно відновлюється до звичного режиму перегляду. Працює протокол RTP у тісній зв’язці із протоколом RTCP;
    • RTCP по суті виконує ту ж функцію що і RTSP, але у зв’язці з RTP. Тобто контролює інтернет з’єднання, коректну передачу фрагментованого потокового відео та особливо контролює якість цієї передачі. Нагадаємо – ця передача відбувається в реальному часі. Тобто те, що служба охорони бачить на моніторі хорошу картинку без спотворення і шумів – це вони повинні завдячувати протоколу RTCP.

Існує ще кілька допоміжних мережевих протоколів, які точково теж використовуються в відеоспостереженні для різних конкретних функцій. Наприклад протокол IGMP (Internet Group Management Protocol) – він потрібен тоді, коли в системі відеонагляду ІР-пристрої обєднуються в групи з допомогою маршрутизатора. Цей протокол буває корисним, якщо потрібно транслювати відео з відеореєстратора на значну кількість споживачів. Наприклад на смартфон директора, начальника служби охорони і інших посадових осіб.