Международная конференция разработчиков
и пользователей свободного программного обеспечения

Компоненты построения современной мультисервисной телекоммуникационной платформы организации на основе открытого программного обеспечения

Максим Литницкий, Москва, Россия, litnimax@asterisk-support.ru

В работе анализируются потребности организации в разрезе телекоммуникационных сервисов и предлагается техническое решение по их реализации в рамках единого недорого устройства под управлением ОС Linux.

1. Анализ потребностей компании в области телекоммуникационных сервисов

Организация доступа в Интернет

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

На текущий момент адресное пространство IPv4 практически исчерпано, поэтому для организации доступа в глобальную сеть в рамках компании используется технология трансляции сетевых адресов (NAT). В организации устанавливается точка доступа в Интернет (маршрутизатор с функцией NAT), за которой Провайдер закрепляет за точкой доступа организации один реальный IP-адрес, и за счет его разделения осуществляется подключение любого числа внутренних пользователей. Для защиты информации от несанкционированного доступа организации требуется также сетевой фильтр – устройство, проверяющее проходящие через него пакеты на соответствие заданным администратором политикам безопасности. Возникает также вопрос качества обслуживания (QoS): например, маршрутизатор должен «знать», что голосовые пакеты – это данные, требующие минимальной задержки и максимального приоритета, а пересылка файла – нечувствительная к задержкам и потерям операция. Существуют и другие телекоммуникационные сервисы сетевого уровня (например, объединение в единую виртуальную частную сеть VPN), однако трансляция сетевых адресов, фильтрация пакетов и качество обслуживания являются базовыми и необходимыми для организации качественного подключения к Интернет любой организации.

Голосовые сервисы

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

В первом приближении, малой компании не требуются телефонная станция и многоканальный номер. Однако, для малого бизнеса каждый клиент жизненно важен, и отсутствие «занято» – главный шанс не упустить очередную продажу, от которой может зависеть дальнейшее развитие компании.

Современная телефонная система должна непременно базироваться на протоколах IP телефонии. Это обусловлено экономией на международных звонках, возможностью прозрачного объединения географически распределенных офисов, интеграцией с альтернативными сетями типа Skype.

Обмен текстовыми сообщениями

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

2. Комплексная телекоммуникационная платформа на базе отрытого ПО

Программная база

В рамках удовлетворения потребностей организации в области телекоммуникаций может быть использованы следующие открытые компоненты:

  • ОС Linux обеспечивает выполнения всех вышестоящих приложений, подключение к Интернет, реализует сетевой маршрутизатор с поддержкой качества обслуживания, выполняющий функции NAT и сетевого фильтра.
    *Asterisk IP-PBX – приложение, работающее на Linux, обладающее всеми возможностями классической АТС, IP-телефонии, предоставляющее функции голосовой почты, конференций, интерактивного голосового меню, центра обработки вызовов, а также имеющее гибкие и универсальные интерфейсы для интеграции с внешними системами.
  • XMPP (Jabber) – расширяемый протокол обмена сообщениями и информацией о присутствии, основанный на XML. Jabber-сервер также содержит шлюзы в другие IM сети (ICQ, MSN, и др.).

Три технологии — Linux, Asterisk и Jabber — позиционируются как единая комплексная программная платформа, обеспечивающая решение потребностей компании в области основных телекоммуникационных сервисов. При этом данное программное обеспечение не является коммерческим и приобретается бесплатно.

Аппаратная база

Аппаратное обеспечение должно обладать минимальной стоимостью и быть максимально надежным. Исходя из этих требований была выбрана аппаратная платформа на базе процессора 500 MHz AMD Geode LX800, с 256 MB оперативной памяти и CompactFlash накопителем. В системе отсутствуют движущиеся механические части, что существенно сказывается на надежности. Также на материнской плате интегрированы 2 100-mbit Ethernet, 2 USB-входа, 2 разъема mini-PCI. Размер материнской платы – 15×15 см, стоимость платформы – порядка $200 USD.


Рис. 1 – Материнская плата


Рис. 2 – Корпус

Интерфейс управления

Для удобства управления представленным решением предлагается следующий подход. Уже длительное время существует открытый продукт m0n0wall, представляющий из себя систему управления сервером FreeBSD через веб-интерфейс. Некоторое время назад от m0n0wall ответвился проект Askozia, портировавший систему на Linux, а также дополнивший продукт пакетом Asterisk и соответствующим интерфейсом управления. Askozia работает на архитектурах x86, ARM, PowerPC, MIPS, SPARC и др. Автор является участником российской команды разработчиков, в настоящее время работающих над расширением функционала Askozia в рамках описанных выше сервисов.


Рис. 3 – Интерфейс управления