2012-02-24 4 views
0

Я ищу, как сделать многоадресного (видеопотоков) маршрутизатор со следующими требованиями:Multicast/UDP маршрутизатор

  • приема и отправки многоадресных потоков на 3-30Mbps (экспедиторской ВЛС)
  • в-таран (или хранение) задержка, чтобы компенсировать перегрузки сети
  • TCP туннелирования (UDP к TCP и наоборот)
  • формирования скорости выхода UDP потоков с до 1 второго джиттера
  • для TCP туннелирования, многодомная сети Suppor т
  • сотни потоков в 3-30Mbits

Я сделал обширные исследования, и я не мог найти любую сеть или видеотрансляции продукта на самом деле соответствия этих требований.

Я реализовал приложение C linux, которое делает выше для одного потока, но теперь мне нужно будет добавить веб-интерфейс, поддержку нескольких потоков и т. Д., Поэтому мне было интересно, есть ли что-то, что может выполнить выше с качеством и надежность, подходящую для видеопередачи, например, какой-то продукт? Выполнение этого на C не так просто, поэтому мне было интересно, есть ли языки более высокого уровня, которые могли бы соответствовать производительности? Будет ли perl, python, java хорошим выбором?

Как мне создать такой вид программного обеспечения? В настоящее время я использую приложение C, использующее Redhat с ядром RT с интерфейсом командной строки и поддержкой одного потока.

Я хочу использовать приложение, которое будет запускать 100 потоков 24/7 (используя 8 или 16-ядерную систему с 64-ГБ ОЗУ), и было бы легко настроить его на лету, используя либо командную строку, либо веб-интерфейс.

Я просто не вижу лучшего варианта, чем текущее ядро ​​Redhat RT и простое приложение для пользователей C. Кажется, это лучший и самый простой вариант.

ответ

2

Обычное подразделение по архитектуре такого приложения состоит в том, чтобы иметь высокопроизводительные части, выполняемые кодом C, и писать низкопроизводительные компоненты, такие как пользовательский интерфейс для конфигурации и т. Д., На языке более высокого уровня, таком как Python или Ruby, или что У вас есть. Было бы трудно достичь требований к производительности на языке высокого уровня, но было бы неоправданно мазохистом написать систему веб-конфигурации в C.

+0

Таким образом, было бы возможным запустить бэкэнд-процесс, написанный на C в режиме реального времени приоритет и apache с PHP/Perl/Python/Ruby при нормальном приоритете. Таким образом, я думаю, это будет легко. – Andrew

Смежные вопросы