SIP over HSPA/EDGE: как победить потерю пакетов при установке соединения (первые пару сек)?
Доброго времени суток!
Я новичек в VOIP и в астериске в частности.
Из личного интереса и в целях экономной экономии на связи поднял сервер на Asterisk (с FreePBX) с несколькими SIP транками и модемом. Все работает замечательно, пока дело не доходит до мобильного интернета.
В качестве клиентов используются встроенные SIP клиенты сматрфонов Nokia.
Опытным путем было выяснено, что для сетей с большими потерями и переменным джиттером лучше всего подходит кодек iLBC.
В данный момент отлично работают звонки через EDGE.
Но как всегда есть одно но: первые пару секунд после перевода канала в состояние «ответ» (когда начинается передача RTP пакетов) собеседник человека, сидящего через мобильную сеть слышит бульканье. Проходит пару секунд, коннект устаканивается и можно отлично говорить.
Этот момент бесит. Как победить?
PS: используется TSL аутентификация и шифровние голоса SRTP (проверено, это не влияет).
PPS: если кому интересно, как настроить TLS+SRTP на связке Asterisk+Nokia дайте знать — напишу статью.
upd: Еще раз проверил, проблема ярко выражена на HSPA соединении (оператор 3mob, Украина). На EDGE «съедается» первая секунда.
Есть подозрение, что это как-то связано с 3g таймерами.
Для SIP-UA это будет выглядеть как пауза в разговоре, можно ещё попробовать сделать Playback(sample); где sample это «пустой» звуковой файл, длительностью 1-2 секунды (его проигрывание потребует передачи RTP пакетов, которые по идее должны «расчистить» путь человеческому голосу).