Tamkovich.com: Телеком/VoIP блог
Современные технологии: Asterisk, SIP, Kamailio, Linux, Cisco, Linksys
Почему Asterisk 1.6.0 не подходит для production
11 февраля, 2010 by Сергей Тамкович
Asterisk Mera, t38Прошло полтора года, с момента релиза Asterisk 1.6.0, а качество кода до сих пор оставляет желать лучшего. Виной тому, на мой взгляд, эксперименты с политикой релизов, введения 4х значных версий (A.B.C.D) и прочие, подобные наноинновации. Как говорится, «Asterisk уже не тот!» :)
Лично для меня, сегодня существует 3 ключевые проблемы в ветке 1.6.0 (срез за декабрь 2009 — февраль 2010), не позволяющие использовать её промышленно.
- Issue #16608 — Под большой нагрузкой (~150) звонков, Asterisk лочится. Подобное поведение, на мой взгляд, худшая из возможных проблем. Вылавливать подобные ошибки гораздо сложнее сегфолтов, кроме того, их невозможно моментально обнаружить, по этому клиенты испытывают перерывы связи до пары минут.
- Несовместимость T.38 с Mera. Во второй половине 2009 года, над стеком T.38 в Asterisk была проделана большая работа, направленная на повышение совместимости, однако результат, на мой взгляд, оказался противоположным. Возможно, виновата сама Mera, т.к. она не шлёт заголовок T38MaxBitRate, тем не менее эта же Mera (Mera DAMOS 1.3.2.20 — 1.3.2.40) Корректно работает со срезом Asterisk 1.6.0 за февраль — апрель 2009 года.
- Сегфолты на некоторых факсах. Происходят не часто — пару раз в неделю при большой нагрузке. Вероятней всего сегфолты, это ещё одно следствие перетрубаций со стеком T.38.
Таким образом, текущий срез ветки 1.6.0 серьёзно уступает транку времён Asterisk 1.4, тогда можно было смело брать trunk для production. Сейчас надо очень тщательно выбирать даже из версий ветки 1.6.0, что уж говорить про 1.6.1 и 1.6.2. Судя по всему, понимают сложившуюся ситуацию и в Digium, недавно было объявлено, об очередном изменении политики релизов. Но об этом в следующей заметке :)
Asterisk Mera, t38