FreeSWITCH - Это как кто-то метко сказал: "это open source, масштабируемая, кросс-платформенная, телефонная система позволяющая распределять, обрабатывать и совершат вызовы."
У нас она и используется в транзитнопредаточном значении т.е. принимает и транзитит вызовы в другом направлении, причем вызовов не мало, вот и подумали мы как то раз, а как она их может тразитить.
Как оказалось, есть три режима:
1) Default - по умолчанию, через себя пропускает медиа с полной обработкой, на сайте производителя указаны следующие свойства этого режима:
- RTP proxied by FreeSWITCH
- FreeSWITCH controls codec negotiation
- If endpoints agree on same codec, no transcoding is performed
- All features enabled - recording, DTMF interception, etc, etc
Ключевое тут то что обрабатывает DTMF и самое главное выполняет переконвертацию кодеков, а это львиная нагрузка в системе.
2) Режим ProxyMedia - который имеет следующие свойства:
- RTP proxied by FreeSWITCH (c= modified, that's it)
- FreeSWITCH has no control or even understanding of other SDP parameters (pass through)
- Endpoints *MUST* agree on same codec because FreeSWITCH can't help them
- Virtually no features available
- RTP также модифицируется, но это нам и надо - закрываем FreeSWITCH остальную сеть, но тут видим что FreeSWITCH не имеет никакого контроля или даже понимание других параметров SDP - это то что называется режим pass through.
- Конечные станции должнысами договориться о кодеке, который будут использовать(FreeSWITCH не учавствует в этом процессе) - вот это нам и нужно!!!
3) Режим Bypass - медиа потоки непосредственно между конечными точками, без обработки мультимедиа FreeSWITCH.свойства следующие:
- RTP *NOT* proxied by FreeSWITCH
- FreeSWITCH has no control over anything SDP related - it's completely pass through from one leg to next (including c=)
- Endpoints must agree on same codec because FreeSWITCH doesn't even see the media or SDP
- Virtually no features available
Ну как бы очевидно:
RTP не проксируется и конечные устройства видят друг друга честно
SDP не модифицируется
Конечные АТС полностью согласуют сами себя
ФриСвич просто гоняет через себя сигнализацию, а медиа/голос сами напрямую друг другу, как это идет и через кого может пойти решительно не ясно, но и всем все равно.
Как писал выше нам нужен режим ProxyMedia, его и пропишем:
В итоге мы увидим примерно такое:
Вот мы можем наблюдать что на входе и выходе одни и теже кодеки и нет переконвертации, в случае 1ого режима мы бы видели разные кодеки и былобы рассогласование и большая нагрузка на сеть
Всем спасибо!
Комментариев нет:
Отправить комментарий