Релиз SIP сервера Kamailio (OpenSER) 3.0.0

13.01.2010 19:45

Вышел релиз высокопроизводительного SIP сервера Kamailio 3.0.0, ранее развиваемого под именем OpenSER, но переименованного из-за конфликта с торговой маркой SER (SIP Express Router). В качестве основы новой версии Kamailio 3.0.0 используется базовый фреймворк проекта SIP Router. Судя по всему это последний обособленный релиз Kamailio, дальше разработка будет объединена с проектом SIP-Router. Сервер отличается продуманной модульной структурой и практически не ограниченными возможностями конфигурирования, благодаря описанию конфигурации в виде сценариев на C-shell подобном языке.

В новой версии значительно изменена внутренняя логика работы системы. Из новых возможностей, можно отметить:

  • Поддержка асинхронного выполнения TCP-пересылок, интенсивный TCP SIP-трафик более не оказывает негативное влияние на производительность;
  • Добавлены новые параметры для тюнинга TCP-соединений;
  • Новая архитектура организации TLS соединений, реализованная в виде отдельного модуля;
  • Новая расширенная реализация поддержки протокола SCTP, поддерживающая синхронное соединение между двумя хостами по нескольким каналам (multi-homing), накопление статистики, создание ассоциированных соединений, автоматическое закрытие соединений, реконфигурацию на лету, повторное использование и трекинг соединений;
  • Интеграция внутренней системы кэширования DNS запросов с функциями автоматически пополняемого черного списка;
  • Улучшение работы менеджера памяти, таймеров и системы организации блокировок;
  • Возможность разделения конфигурации не несколько файлов, подключаемых через новую директиву include_file;
  • Поддержка в конфигурации директив define/ifdef/ifndef для организации условного выполнения блоков;
  • Новые управляющие маршрутизацией блоки конфигурации: onsend_route для обработки отправляемого по сети SIP-запроса и event_route для привязки маршрутизации к заданным событиям;
  • Возможность переопределения отдельных параметров конфигурации без перезапуска серверного процесса и заданных модулей.
  • Возможность определения собственных параметров конфигурации, которые затем можно использовать в блоках маршрутизации;
  • Базовые возможности программы выделены в специальную разделяемую библиотеку, которую можно использовать в других проектах.
  • Добавлено 14 новых модулей: auth identity, call_control, cfg_db, cfg_rpc, ctl, drouting, iptrtpproxy, kex, memcached, mi_rpc, pdb, tmx, topoh, xmlrpc;
  • Поддержка SIP-идентификации (RFC 4474);
  • Подготовлен специальный управляющий RPC-интерфейс и добавлена новая реализация обработчика XMLRPC запросов, которые теперь можно обрабатывать в специальных блоках конфигурации. Добавлена утилита для управления из командной строки - sercmd;
  • В директивах управления коммутацией теперь можно использовать регулярные выражения;
  • Блоки маршрутизации могут быть предкомпилированы для увеличения скорости их выполнения. Добавлен модуль для организации кэширования через memcache;
  • Добавлена возможность обхода NAT с использованием модуля, работающего на уровне ядра.