Потоковое видео в реальном времени через прокси

У меня есть две конечные точки за брандмауэрами, которые могут общаться только через внешний ретранслятор/прокси.

Я собираюсь передавать видеокадры с одной конечной точки на ретранслятор на другую конечную точку. Неважно, будут ли потеряны кадры — главное требование — чтобы латентность была как можно меньше. Порядок кадров также довольно важен.

Что лучше всего подходит для этого, UDP или TCP? Какие дополнительные соображения мне нужно было бы сделать, если бы я использовал UDP? Есть ли другие более подходящие протоколы/библиотеки, которые я мог бы использовать? Я делаю это из Java.


person Matt    schedule 14.02.2012    source источник
comment
Я не думаю, что RTP находится в IP-вещании. Поток RTP использует службу многоадресной рассылки IP (обычно многоадресную рассылку UDP) и обычно делится на две разные группы многоадресной рассылки: одну для видеофрагментов и одну для аудиофрагментов. Но обычно пользователь увидит оба как одно имя сеанса. Этот сеанс обрабатывается портом управления RTCP, который может быть одноадресным или многоадресным. Учитывая это, RTP представляет собой комбинацию одноадресной и многоадресной IP-адресации. Если порт управления RTCP принудительно использует многоадресную IP-рассылку, все теперь находится в многоадресной IP-адресации; нам все еще нужно управлять 2 многоадресными группами (видео и аудио). Прокси должен изучить это.   -  person ecle    schedule 14.02.2012
comment
Ознакомьтесь с заголовком 2.3 Mixers and Translators о том, как работать с брандмауэром в RFC1889. - RTP: транспортный протокол для приложений реального времени. Транслятор может быть чем-то, чтобы перевести многоадресную IP-адресацию в одноадресную IP-адресацию в точке брандмауэра.   -  person ecle    schedule 14.02.2012
comment
Раздел по многоадресной рассылке по IP   -  person ecle    schedule 14.02.2012


Ответы (1)


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

person Vadym Stetsiak    schedule 15.02.2012