Перейти к содержимому
Калькуляторы

Kamailio - пустить RTP напрямую между абонентами

Всем добрый день,

есть связка Kamailio + Asterisk, Kamailio вывешен в интернет, * - внутри. Kamailio использутся как sip + rtp прокси.

Все клиенты(абоненты) внешние, за натом.

 

UserA ---sip--> Kamailio --> Asterisk --> UserB
      \-rtp--> Kamailio (rtpproxy) --> Asterisk --> UserB

Весь трафик проходит через Камалио. Кол-во абонентов возросло и платить хостеру за излишек потребленного трафика как-то не хочется.

Было принято решение попробовать направлять RTP напрямую между абонентами.

В теории камалио владеет всей необходимой информацией. В таблице location он знает реальные IP адреса пользователей. Можно ли в INVITE\SDP подставлять эти данные для подъёма RTP сессии напрямую между абонентами?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Вы уверены, что межабонентский трафик сколько-нибудь заметен на общем фоне?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Можно

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Вообще можно, но так просто - нельзя. Для того чтобы RTP прошел нужно:

1) Знать реальные адреса и порты. В таблице locations могут быть адреса с которых пришла сигнализация, но rtp может приходить совсем с другого адреса

2) Иметь открытые NAT трансляции на пути к обоим абонентам.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.