Как работает буферизация в цепочке серверов Asterisk?

У меня есть два сервера Asterisk в такой цепочке:

SIP-клиент (G.729) <-SIP-> Asterisk 1 (преобразование G.729 в ​​G.711) <- IAX2-> Asterisk 2 -> заканчивается аналоговой линией.

Если буферизация не была настроена ни на одной из звездочек, звук был ужасным при приеме по аналоговой линии (в другом направлении все было нормально - я предполагаю, что у SIP-клиента включена буферизация для приема).

Поскольку два сервера Asterisk находятся в локальной сети, я подумал, что буферизация поможет sense на Asterisk 1 обращена к удаленному SIP-клиенту.

Однако включение буферизации на Asterisk 1 не повлияло на качество звука. Включение буферизации на Asterisk 2 каким-то образом помогло .

Просмотр статистики на Asterisk 2 подтверждает это:

CLI> iax2 show netstats
                           -------- LOCAL ---------------------  -------- REMOTE --------------------
Channel               RTT  Jit  Del  Lost   %  Drop  OOO  Kpkts  Jit  Del  Lost   %  Drop  OOO  Kpkts FirstMsg    LastMsg
IAX2/ast1-5936       1   60  140    79   0    43 16712     64    0   40     0   0     0    0      0 Rx:NEW      Rx:ACK    

Как вы можете видеть, около 25% полученных пакетов - Out- of-order (ООО), что, как я полагаю, исправлено настроенным джиттербуфером.

Итак, мой вопрос:

  1. Каким образом неправильный порядок пакетов может пережить трансляцию кодека на Asterisk 1 и пройти через Asterisk 2? и
  2. Как jitterbuffer может исправить ошибки, возникшие на расстоянии перехода (я уверен, что виноват SIP-клиент - CsipSimple - поскольку другие SIP-клиенты звучат намного лучше без буферизации, чем этот) и почему jitterbuffer на более близкий сервер не может этого сделать?
0
задан 27 April 2017 в 01:36
1 ответ

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

Если второй сервер показывает трафик с высокой задержкой или нерабочими пакетами, и эти два хоста находятся в одном сегменте локальной сети, что-то не так в вашей локальной сети. Пронюхайте вашу локальную сеть, чтобы увидеть, что там происходит (используйте wireshark). Если вы видите много ретрансляций, у вас могут быть плохие соединения/проводка/NIC/etc.

.
0
ответ дан 5 December 2019 в 08:17

Теги

Похожие вопросы