Применение универсальных протоколов для передачи изображений и видео | Статья в журнале «Молодой ученый»

Отправьте статью сегодня! Журнал выйдет 30 ноября, печатный экземпляр отправим 4 декабря.

Опубликовать статью в журнале

Автор:

Рубрика: Информационные технологии

Опубликовано в Молодой учёный №4 (399) январь 2022 г.

Дата публикации: 28.01.2022

Статья просмотрена: 207 раз

Библиографическое описание:

Сидорова, В. И. Применение универсальных протоколов для передачи изображений и видео / В. И. Сидорова. — Текст : непосредственный // Молодой ученый. — 2022. — № 4 (399). — С. 41-45. — URL: https://moluch.ru/archive/399/88353/ (дата обращения: 18.11.2024).



Рассматриваются простейший протокол передачи дейтаграмм (UDP), протокол, управляющий передачей данных (TCP), и прикладной протокол (HTTP). Исследуются сетевые протоколы, необходимые как для передачи видеопотока по сети, так, например, и для дистанционного управления камерой, на примере работы IP-камеры.

Ключевые слова : UDP, TCP, IP-камера, HTTP, дейтаграмма, пакет Ethernet II, видеопоток.

Как известно, в IP-камерах D-Link [1, 2] (будем рассматривать далее IP-камеры этого брэнда в силу их значительной распространенности) для передачи видеопотока применены только универсальные транспортные протоколы UDP [3], TCP [4] и прикладной протокол HTTP [5]. Такое решение, видимо, упрощает встроенное программное обеспечение камеры. Рассмотрим эти три протокола.

1. Простейшим из них является протокол UDP (User Datagram Protocol — протокол пользовательских дейтаграмм). Под дейтаграммой понимаются данные вышележащего уровня, вложенные в пакет UDP.

UDP не подтверждает доставку данных, не заботится о корректном порядке доставки пакетов и не делает повторов, если пакет потерян. Обеспечение этих возможностей должны на себя брать вышележащие протоколы. В случае IP-камер такой протокол должен выполнять следующие действия:

— разбивать видеопоток на дейтаграммы (обратная сборка будет производиться на компьютере);

— передавать и принимать управляющие сообщения, например, о начале и завершении передачи;

— при необходимости применять нумерацию дейтаграмм, позволяющую на компьютере правильно собрать видеопоток, если дейтаграммы пришли не в том порядке;

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

Эти действия почти эквивалентны (кроме удаления кадров) действиям транспортного протокола TCP. Поэтому нет смысла применять UDP в ненадежных сетях, так как накладные расходы TCP возьмет на себя нестандартный прикладной протокол.

Преимущество UDP состоит в высокой скорости передачи. Рассмотрим этот вопрос более подробно. Пусть используется наиболее часто применяемый в локальных сетях тип пакета Ethernet II (IEEE 802.3). Его максимальный размер равен 1518 байт. За вычетом 18 байт на заголовок канального уровня Ethernet и контрольный код остается 1500 байт для пакета сетевого уровня (IP). Заголовок IP далее отнимает 20 байт, а заголовок UDP — еще 8 байт. Итого на дейтаграмму UDP остается 1500–20–8 = 1472 байта.

Учитывая требуемый минимальный интервал между пакетами Ethernet II в 96 бит (12 байт) и расходы на синхронизацию каждого пакета (9 байт) находим предельно достижимую скорость передачи видеопотока по UDP:

,

где S PHY — скорость передачи физического уровня.

Например, если применяется сеть Ethernet 100Base-T, для которой S PHY = 100 Мбит/с = 12500000 байт/с, то получим S UDP примерно до 11 Мбайт/с.

Таким образом, в надежных сетях (например, в пределах одного сегмента локальной сети) применение UDP для передачи видеопотока уместно, так как позволяет достичь 95 % от максимальной пропускной способности сети.

В табл. 1 приведены расчеты максимальной частоты кадров для случая использования UDP в Ethernet 100Base-T.

Таблица 1

Достигаемая частота кадров, ограниченная UDP в Ethernet 100B ase -T

Разрешение, пикселей

Сжатие

Максимальная частота кадров выходных видеоданных, Гц

640×480

Нет

13

640×480

В 10 раз

130

320×240

Нет

54

320×240

В 10 раз

540

Отметим, что частоты выше 30 Гц недостижимы самой камерой DCS-920.

2. Рассмотрим возможности применения протокола TCP (Transmission Control Protocol — протокол управления передачей). Данные, вложенные в пакет TCP, принято называть сегментами. Этот протокол предназначен для доставки длинных сообщений, значительно превышающих максимальный объем одного пакета. Поэтому он разбивает исходное сообщение на сегменты.

Приемник использует номер последовательности, содержащийся в получаемых сегментах, для восстановления их исходного порядка. Приемник уведомляет передающую сторону о номере последовательности байт, до которой он успешно получил данные, включая его в поле «номер подтверждения».

Для того чтобы передающая сторона не отправляла данные интенсивнее, чем их может обработать приемник, TCP содержит средства управления потоком. В сегментах, направляемых от приемника передающей стороне в поле «окно» указывается текущий размер приемного буфера. Передающая сторона сохраняет размер окна и отправляет данных не более, чем указал приемник. Если приемник указал нулевой размер окна, то передача данных в направлении этого узла не происходит, до тех пор, пока приемник не сообщит о большем размере окна.

В отличие от UDP, который может сразу же начать передачу пакетов, TCP устанавливает соединение, которое должно быть созданы перед передачей данных. Это необходимо для того, чтобы согласовать счетчики сегментов и другие параметры передающей и приемной стороны.

Очевидно, что TCP несколько менее производителен, чем UDP по следующим причинам:

— больше размер заголовков (в TCP — минимум 20 байт, в UDP — 8 байт);

— есть передача управляющих пакетов при установлении и завершении соединения;

— есть передача управляющих пакетов подтверждения.

Последняя причина является основной, а расходами на установление и завершение соединения в случае видеопотока можно пренебречь.

Например, анализатор протоколов показывает, что в камере D-Link DCS-920 установлен размер окна, равный размеру 4 сегментов. Это значит, что подтверждения должны присылаться не реже, чем через каждых 4 сегмента данных (а реально анализатор показывает, что подтверждения следуют чаще). Размер пакета подтверждения составляет 54 байта.

Тогда получим размер сегмента 1500–20–20 = 1460 байт, а максимально достижимую производительность TCP:

Сравнение этого результата c результатом UDP показывает, что для данных большого размера (видеопоток) TCP может оказаться почти настолько же быстрым, как и UDP. Для более коротких данных, например, для одиночного изображения разница будет больше из-за расходов на установление и завершение соединения.

Рассмотрим такой случай. Типичное изображение размером 320*240 пикселей, сжатое в 20 раз занимает объем примерно 10000 байт. Для его передачи потребуются 7 пакетов с сегментами TCP, минимум 2 подтверждения на эти данные, 3 управляющих пакета на установку соединения и 2 — на его завершение. Управляющие пакеты в зависимости от их типа имеют несколько разный размер. На установление соединения получается минимум 62 + 60 + 54 + 3(12 + 9) = 239 байт. На завершение — 60 + 54 + 2(12 + 9) = 156 байт.

Тогда

В приведенных расчетах учтена только предельная производительность локальной сети и не учтены задержки, вносимые процессором камеры.

3. Протокол HTTP (HyperText Transfer Protocol — протокол передачи гипертекста) является прикладным и обычно использует в качестве транспортного протокола TCP. Применительно для получения изображений и видео от IP-камеры достаточно минимальной реализации HTTP.

В терминологии HTTP камера является HTTP-сервером, компьютер — HTTP-клиентом. Для получения изображения клиент устанавливает соединение TCP, в котором посылает камере HTTP-запрос примерно следующего вида:

GET /image.jpg HTTP/1.1

Content-Type: text/html

Host: 192.168.1.20

Accept: text/html, */*

User-Agent: Mozilla/3.0 (compatible; Indy Library)

Самой важной здесь является первая строка, в которой указано, что надо получить от сервера файл image.jpg.

В ответ камера высылает свой ответ:

HTTP/1.0 200 OK

Server: Camera Web Server/1.0

Auther: Steven Wu

MIME-version: 1.0

Cache-Control: no-cache

Content-Type: image/jpeg

Content-Length: 58780

за которым непосредственно пересылается файл image.jpg.

По сравнению с TCP объем передаваемых данных увеличивается на 1 пакет, 1 подтверждение и заголовок ответа камеры. В сумме эта добавка составляет примерно 200 + 60 + 160 байт = 420 байт и снижает максимальную скорость передачи изображения в предыдущем примере еще на 3…4 %.

Протокол HTTP удобен тем, что он удобно встраивается в визуальный интерфейс, поддерживаемый браузерами, и имеет множество готовых реализаций.

Таким образом, можно сделать вывод, что применение рассмотренных протоколов в IP-камерах вполне оправдано, так как программное обеспечение получается относительно несложным, а скорость передачи падает не очень существенно (80 %...90 % от максимальной). Это обеспечило популярность универсальных протоколов в IP-камерах.

Литература:

  1. D-Link [Электронный ресурс]: D-Link. — URL: https://www.dlink.ru/ru/about/ (дата обращения: 26.01.2022).
  2. IP-камера: что это такое, как работает, какие бывают IP-камеры [Электронный ресурс] / Dssl. — URL: https://www.dssl.ru/publications/stati/ip-kamera-chto-eto-takoe-kak-rabotaet-kakie-byvayut-ip-kamery/ (дата обращения: 26.01.2022).
  3. UDP [Электронный ресурс] / Википедия. Свободная энциклопедия. — URL: https://ru.wikipedia.org/wiki/UDP (дата обращения: 26.01.2022).
  4. TCP/IP [Электронный ресурс] / Википедия. Свободная энциклопедия. — URL: https://ru.wikipedia.org/wiki/TCP/IP (дата обращения: 26.01.2022).
  5. HTTP–протокол [Электронный ресурс] / blog.skillfactory. — URL: https://blog.skillfactory.ru/glossary/http/ (дата обращения: 26.01.2022).
Основные термины (генерируются автоматически): UDP, TCP, HTTP, байт, протокол, PHY, пакет, передающая сторона, завершение соединения, передача видеопотока.


Ключевые слова

UDP, HTTP, видеопоток, TCP, IP-камера, дейтаграмма, пакет Ethernet II

Похожие статьи

Автоматизация поиска оптимальных параметров сетевого UDP-соединения в многопоточных Java-программах

Описан разработанный автором программный комплекс, позволяющий автоматизировать поиск оптимальных параметров сетевого соединения с учётом влияния следующих параметров: размер буфера сокетов, скорость передачи пакетов, закон распределения размера паке...

Переход сетевых технологий передачи данных к SDN/NFV

В статье рассматривается эволюция сетевых моделей и самих технологий передачи данных с коммутацией пакетов. Изучены основные факторы, ограничивающие существующую сетевую архитектуру. Проанализированы архитектуры, функциональные возможности современны...

Методы обработки видеоизображений с помощью языка программирования Python

В статье рассматриваются современные методы обработки видеоизображений с использованием языка программирования Python. Описываются ключевые библиотеки, такие как OpenCV и scikit-image, а также их применение для выполнения задач, включая распознавание...

Технология захвата синхронизации для UWB сетей

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

Протоколы POP, IMAP, SMTP: основные принципы и применение

В этой статье мы рассмотрим различные почтовые интернет протоколы. В частности, мы рассмотрим протоколы Post Office Protocol Version 3 (далее POP3), Internet Message Access Protocol (далее IMAP), Simple Mail Transfer Protocol (далее SMTP), а также их...

Разработка веб-сервиса для хранения и передачи данных

В данной статье рассматривается процесс разработки веб-сервиса для облачного хранения и передачи данных, описываются основные аспекты создания серверной части с использованием фреймворка Spring и реализации клиентской части с использованием React, а ...

Исследование механизмов защиты цифровой видеоинформации при её передаче в распределенных компьютерных сетях

В статье рассматриваются возможные методы защиты цифрового видеопотока при его передаче в компьютерных сетях. На сегодняшний день существует два основных направления решения задачи защиты информации: криптография и стеганография. Цель криптографии — ...

Перспективы использования интернет-сети в доставке ТВ-программ пользователям

Рассматриваются актуальные вопросы по IPTV и интернет-телевиденью. Приводятся структурные схемы, реализующие технологию Интернет-вещания, даётся краткая характеристика методов передачи трафика в IP-сетях: unicast, broadcast и multicast. Сравнение. IP...

Анализ влияния использования протоколов MPLS и RSVP на надежность сети NGN

В статье проведено аналитическое исследование работы протоколов MPLS и RSVP в сети NGN. Показано эффективное использование протоколов MPLS на уровне ядра и RSVP на уровне доступа сети NGN. Получены графики зависимости качества обслуживания по парамет...

О методах внедрения цифровых водяных знаков в потоковое видео

В данной статье дан обзор наиболее распространенных методов внедрения цифровых водяных знаков в потоковое видео, применяемые российскими и зарубежными специалистами. Рассмотрены такие алгоритмы, как дискретное косинусное преобразование, вейвлет-преоб...

Похожие статьи

Автоматизация поиска оптимальных параметров сетевого UDP-соединения в многопоточных Java-программах

Описан разработанный автором программный комплекс, позволяющий автоматизировать поиск оптимальных параметров сетевого соединения с учётом влияния следующих параметров: размер буфера сокетов, скорость передачи пакетов, закон распределения размера паке...

Переход сетевых технологий передачи данных к SDN/NFV

В статье рассматривается эволюция сетевых моделей и самих технологий передачи данных с коммутацией пакетов. Изучены основные факторы, ограничивающие существующую сетевую архитектуру. Проанализированы архитектуры, функциональные возможности современны...

Методы обработки видеоизображений с помощью языка программирования Python

В статье рассматриваются современные методы обработки видеоизображений с использованием языка программирования Python. Описываются ключевые библиотеки, такие как OpenCV и scikit-image, а также их применение для выполнения задач, включая распознавание...

Технология захвата синхронизации для UWB сетей

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

Протоколы POP, IMAP, SMTP: основные принципы и применение

В этой статье мы рассмотрим различные почтовые интернет протоколы. В частности, мы рассмотрим протоколы Post Office Protocol Version 3 (далее POP3), Internet Message Access Protocol (далее IMAP), Simple Mail Transfer Protocol (далее SMTP), а также их...

Разработка веб-сервиса для хранения и передачи данных

В данной статье рассматривается процесс разработки веб-сервиса для облачного хранения и передачи данных, описываются основные аспекты создания серверной части с использованием фреймворка Spring и реализации клиентской части с использованием React, а ...

Исследование механизмов защиты цифровой видеоинформации при её передаче в распределенных компьютерных сетях

В статье рассматриваются возможные методы защиты цифрового видеопотока при его передаче в компьютерных сетях. На сегодняшний день существует два основных направления решения задачи защиты информации: криптография и стеганография. Цель криптографии — ...

Перспективы использования интернет-сети в доставке ТВ-программ пользователям

Рассматриваются актуальные вопросы по IPTV и интернет-телевиденью. Приводятся структурные схемы, реализующие технологию Интернет-вещания, даётся краткая характеристика методов передачи трафика в IP-сетях: unicast, broadcast и multicast. Сравнение. IP...

Анализ влияния использования протоколов MPLS и RSVP на надежность сети NGN

В статье проведено аналитическое исследование работы протоколов MPLS и RSVP в сети NGN. Показано эффективное использование протоколов MPLS на уровне ядра и RSVP на уровне доступа сети NGN. Получены графики зависимости качества обслуживания по парамет...

О методах внедрения цифровых водяных знаков в потоковое видео

В данной статье дан обзор наиболее распространенных методов внедрения цифровых водяных знаков в потоковое видео, применяемые российскими и зарубежными специалистами. Рассмотрены такие алгоритмы, как дискретное косинусное преобразование, вейвлет-преоб...

Задать вопрос