Вестник связи №4 2005

Архитектура CSTA: новейший путь в NGN и SIP-телефонию

М.А. ШНЕПС-ШНЕППЕ, генеральный директор ЗАО “ЦКБ-Абаванет”, доктор технических наук

Публикуемой ниже статьей доктора технических наук профессора М.А. Шнепс-Шнеппе журнал “Вестник связи” открывает новую регулярную рубрику “Актуальные лекции”. Цель ее — рассказывать нашим читателям понятным языком о новых стандартах и технологиях телекоммуникаций, актуальных для связистов стран РСС. Редакция с удовольствием рассмотрит предложения потенциальных авторов рубрики. Рассчитана она и на инженера, и на менеджера, и на руководителя, и на студента, словом адресована каждому, кто по-настоящему интересуется связью во всех ее измерениях.

Цель статьи состоит в том, чтобы рассказать читателю о новом направлении в построении сетей нового поколения NGN — архитектуре CSTA, которая конкурирует с концепцией интеллектуальных сетей IN, — а также о реализации SIP-телефонии, питая надежду, что это повлияет на российские планы модернизации сельских телефонных сетей, особенно в условиях внедрения универсальных услуг и реализации программы “Электронная Россия”.

В последнее время организация ECMA (European Computer Manufacturing Association), созданная на заре компьютерной эры, в 1960 г., уделяет особое внимание SIP-телефонии. В работе ECMA активно участвуют как производители ЭВМ, так и АТС. Основными участниками рабочей группы, разрабатывающей стандарты компьютерной телефонии CSTA (Computer Supported Telecommunication Applications), являются компании Avaya-Tenovis, Intel, IBM, Hitachi, Microsoft, Panasonic/Matsushita, Siemens и Tadiran Telecom. В сентябре 2004 г. ECMA опубликовала пресс-релиз о выпуске серии новых стандартов по Интернет-технологиям (язык XML, протокол SIP, распознавание и синтез речи, услуги мультимедиа), которые существенно расширяют архитектуру CSTA.

Простейшая схема архитектуры CSTA показана на рис. 1, из которого видно, что она конкурирует с концепцией интеллектуальных сетей IN, различаются только их области применения. Если IN ориентирована на предоставление услуг на уровне автоматической междугородной связи, то архитектура CSTA более приземлена. Свое начало она берет от технологии УПАТС, от замены коммутаторов полуавтоматики на компьютеры, но в настоящее время уровень стандартизации CSTA уже превосходит концепцию IN в части учета Интернет-технологий.

Документы по CSTA сегодня являются официальными стандартами ETSI и, тем самым, архитектура CSTA представляет собой основу для построения сетей нового поколения NGN (табл. 1). Заметим, что разработка архитектуры CSTA имеет длинную предысторию.

В 1992 г. была опубликована первая версия стандарта CSTA-I (ECMA-169), в нем было 40 сервисов, которые группировались вокруг контроля вызова в условиях работы полуавтоматической связи. CSTA-II обнародовали в 1994 г. и он содержит 77 сервисов, что включает дополнения в части ввода-вывода, голосовой почты, работы автоответчика IVR.

Третью фазу стандарта CSTA-III опубликовали в 1998 г. Новейшая, шестая версия CSTA-III (июнь 2004 г.) содержит 136 сервисов и включает в себе практически все перспективные услуги связи. Протокол CSTA-III можно внедрять по частям, так как сервисы группируются по профилям, например, базовый телефонный профиль содержит только пять сервисов (MakeCall, Answer, ClearConnection, MonitorStart, MonitorStop), имеется 6 профилей SIP-телефонии, три профиля работы голосового браузера.

Основные понятия архитектуры CSTA

Устройства — основные объекты, с которыми работает протокол CSTA. Устройства, которые может контролировать этот протокол, называются CSTA-устройствами. В качестве CSTA-устройств могут выступать физические объекты: абонентские линии (рис. 1) или соединительные линии (рис. 2), тумблеры на пульте телефониста, а также логические объекты: группы линий, группы агентов контакт-центра и т. п. CSTA-устройства имеют атрибуты, по которым компьютер может следить за их состояниями (осуществить их мониторинг) посредством протокола CSTA, точнее, посредством CSTA-сервисов.

Медиа-характеристики. Протокол CSTA (фаза 3) допускает широкий набор характеристик CSTA-устройств. Помимо стандартного телефона для голосовой связи допускается передача данных (как в режиме коммутации каналов, так и коммутации пакетов), передача изображений (Image). Предусмотрены Интернет-услуги: передача электронной почты (т. е. CSTA-вызов может представлять собой E-mail), обмен текстовыми сообщениями (Chat). Особое внимание уделено новейшим службам сообщений, включая “Срочные вести” (Instant Messages, IM), короткие сообщения SMS и мультимедийные сообщения (Multi-Media Service, MMS).

Модель вызова. Понятие вызова является центральным при предоставлении CSTA-сервисов, а модель вызова (или модель сеанса связи, как говорят в последнее время) — базой для общения между АТС и компьютером. Кроме того, вызов неразрывно связан с установлением соединения. На рис. 3 показаны взаимоотношения между вызовом, устройствами и соединениями.

На рис. 4 кружки обозначают состояния, в которых может находиться соединение CSTA. Стрелки между ними указывают на возможные переходы между состояниями в модели вызова. Каждый переход сопровождается сообщением о событии, вызвавшим данный переход. Как показано на рис. 4, имеется всего семь состояний:

  • Null (Нулевое) — в этом состоянии отсутствует связь между вызовом и устройством;

  • Initiated — инициализация  CSTA-сервиса. Обычно это состояние соответствует набору номера;

  • Alerting — вызывной звонок, что указывает на желание вызова быть соединенным с устройством;

  • Connected — установление соединения с устройством;

  • Held — удержание вызова (отсутствует физическая связь с устройством);

  • Queued  — вызов ожидает установления соединения;

  • Failed — сбой.

Пример 1. CSTA-сервис Make Call. В документе ECMA-269 подробно расписаны сценарии CSTA-сервисов (общее число сервисов составляет 136). Возьмем наиболее популярный CSTA-сервис Make Call (Делай вызов). На рис. 5 показано состояние фрагмента сети до и после применения сервиса: показан пример успешного вызова С1, т. е. устанавливаются соединения между вызовом С1 и устройствами D1 и D2. В этом сценарии предполагается, что устройства  D1 и D2 свободны и имеют право участвовать в вызове, компьютер посылает подсказку устройству D1 поднять трубку.

Взаимодействие между компьютером и АТС происходит в режиме клиент-сервер. Клиентом обычно выступает программа приложений в компьютере (например, программа сервиса Make Call), а сервером — АТС, как показано на рис. 6. Хотя бывают и исключения, например, запрос на выбор маршрута в Услуге 800 заказывает АТС, а выполняет компьютер.

Табл. 2 показывает взаимодействие межу АТС и компьютером при реализации сервиса Make Call и содержит 6 шагов. Компьютер посылает запросы (Request) и получает ответы (Result) и сообщения о событиях (Event), в итоге устанавливается соединение между вызывающим (calling) устройством D1 и вызываемым (called) устройством D2.

Пример 2. CSTA-услуга: работа контакт-центра. Рассмотрим работу телефонистки D1 в контакт-центре при установлении соединения между двумя абонентами D2 и D3. Тем самым, речь пойдет о трех CSTA-устройствах, которые в данном случае будут SIP-телефонами и которые общаются по SIP-протоколу, а CSTA-сообщения, записанные на языке XML (в соответствии со стандартом ECMA-323), передаются во время SIP-диалога. CSTA-сообщения, как показывает рис. 6, — это запросы (Request) на сервисы, ответы (Response) о предоставляемом сервисе в соответствии с требуемыми в запросе характеристиками, а также сообщения о событиях (Events).

Рассмотрим простейший случай работы телефонистки, который ограничивается тремя сервисами MakePredictiveCall, ConsultationCall и TransferCall (рис. 7 — 9):

  • MakePredictiveCall  — телефонистка D1 (вызывая соответствующую программу в компьютере) устанавливает предварительное соединение с вызываемым абонентом D2, что завершается событием a (alerting) или c (connected);

  • сервис ConsultationCall (рис. 8) состоит из двух шагов: надо проверить наличие связи с вызываемым абонентом  D2 в существующем вызове С1, затем поставить его на удержание h (held) и создать второй вызов С2;

  • переадресация вызова TransferCall состоит в установлении соединения между D2 и D3 (в рамках нового вызова С3)  и освобождении вызовов С1 и С2.

Мы рассмотрели схему одного CSTA-приложения — предоставление полуавтоматической связи.

Использование SIP-транспорта в CSTA

Теперь следует разобраться в том, как это все работает в условиях SIP-телефонии. Для этого требуется решить три задачи: установить сеанс CSTA-приложения (рис. 10); обеспечить транспорт запросов и ответов по CSTA-сервисам (рис. 11); организовать мониторинг CSTA-событий (рис. 12).

Установка сеанса приложений CSTA в SIP-телефонии

Перед тем как послать запрос к программе SIP UA (согласно UaCSTA-протоколу), как это показано на рис. 13, следует установить сеанс приложений CSTA, что состоит из следующих шагов (рис. 10):

  • приложение создает сеанс приложений, устанавливая SIP-диалог с агентом пользователя (User Agent, UA) посредством метода SIP INVITE. Запрос о статусе системы Request System Status включается в тело сообщения SIP INVITE;

  • если UA поддерживает запрашиваемые параметры сеанса приложений, то последует ответ (Response) с данными о Request System Status в теле сообщения 200 ОК;

  • приложение посылает SIP ACK, чем кончается установление диалога;

  • затем сеанс приложений (в виде сообщений метода SIP INFO) длится произвольно долго, вплоть до посылки метода SIP BYE.

Транспорт запросов и ответов по CSTA-сервисам

После того как для нужд сеанса приложений создан SIP-диалог, запросы сервисов CSTA XML можно посылать посредством метода SIP INFO, точнее: в теле сообщений метода SIP INFO, а ответы по сервисам CSTA XML поступают в сообщениях 200 OK.

На рис. 11 показано приложение, которое состоит из  двух сервисов: CSTA Make Call service (шаги 1 и 2) и CSTA System Status service (шаги 3 и 4).

Мониторинг CSTA-событий

Перед началом работы приложения необходимо запустить сервис Monitor Start, что позволит получать сообщения о CSTA-событиях и отслеживать прохождение CSTA-вызовов в программе UA (рис. 12).

Чтобы запустить монитор, посылается запрос Monitor Start service request в теле метода SIP INFO.

Программа SIP UA присылает ответ Monitor Start response в сообщении SIP 200 OK.

Программа SIP UA генерирует сообщение о событии CSТА Delivered event в теле метода SIP INFO.

Сообщение 200 ОК, после чего следует любая последовательность сообщений о событиях, происходящих в рамках данного приложения.

Программа SIP UA прекращает работу монитора посылкой запроса Monitor Stop service request в теле метода SIP INFO.

200 ОК подтверждает завершение сервиса Monitor Stop.

О внедрении CSTA-протокола в SIP-телефонии

Предоставление CSTA-услуг (приложений) для абонентов SIP-телефонии иллюстрирует рис. 13. Здесь UaCSTA означает  программу пользователя (так называемый User Agent) в SIP-фоне, которая способна общаться с компьютером приложений по CSTA-протоколу, точнее: передает CSTA-сообщения во время SIP-сеанса.

Профили контроля вызова uaCSTA

В последние годы связисты России строили интеллектуальные сети. Однако в условиях наступления SIP-телефонии и Web-сервисов напрашивается выбор новой технологии для реализации дополнительных услуг.

Возможность программирования новых услуг на базе CSTA XML-сервисов имеет несомненное преимущество перед классическими интеллектуальными сетями. Но как в будущем обеспечить совместимость разных реализаций CSTA-протокола в SIP-телефонии? В силу изобилия сервисов контроля вызова CSTA в действительности можно обойтись небольшим их подмножеством, но оно должно быть одно и то же для разных
производителей.

В стандарте ECMA-269 заданы шесть профилей (наборы сервисов) SIP-телефонии, точнее четыре набора сервисов контроля uaCSTA-вызова: минимальный; базовый; расширенный (Advanced); для конференций и два профиля описания свойств uaCSTA-устройства.

Перечислим CSTA-сервисы базового профиля контроля uaCSTA-вызова (Basic uaCSTA Call Control Profile):

  • Answer Call — программа UA отвечает на вызывной сигнал;

  • Clear Connection — завершение вызова в UA;

  • Deflect Call — перевод соединения с одного вызывающего абонента на другой;

  • Hold Call — удержание вызова;

  • Make Call — инициировать вызов от имени originating UA;

  • Retrieve Call — активизация вызова, который был на удержании (Hold);

  • Single Step Transfer — замена одного устройства в вызове на другое;

  • Monitor Start;

  • Monitor Stop.

Как контролировать приложения CSTA XML: роль B2BUA

На рис. 13 представлена схема, в которой CSTA-приложение инициирует SIP-телефон (например, запрашивает маршрут вызова). В большинстве же случаев инициатором приложения является компьютер (так называемаая третья сторона), что требует более сложной архитектуры (рис. 14): появляется сервер приложений SIP B2BUA (back-to-back-user-agent). Программа B2BUA представляет собой особый тип агента пользователя, который сочетает в себе программу сервера (может получать запросы) и программу клиента (может генерировать запросы). В такой архитектуре протокол uaCSTA усиливает возможности B2BUA, добавляя к SIP-фону свойства, которые отсутствуют в стандартном протоколе SIP.

Управление обычным телефоном

На рис. 15 показано, как CSTA XML-приложение может быть реализовано в обычной телефонии, если АТС имеет CSTA-протокол. Следует добавить UaCSTA-шлюз, который преобразует CSTA XML сообщения в форматы CSTA-протокола.

Примеры реализации CSTA-протокола в SIP-телефонии

Siemens OpenScape. Компания Siemens предлагает программый комплекс мультимодальных коммуникаций OpenScape, цель которого облегчить организацию коллективной работы в учреждении. OpenScape построен на базе сервера Microsoft-Greenwich, который обладает открытой архитектурой и включает в себя протоколы SIP, XML, CSTA, SALT и SOAP. Пользуясь обычным телефоном и персональным компьютером, любой сотрудник общается со своими коллегами в режиме мультимедийной конференции, как показано на рис. 16.

Программный комплекс OpenScape установлен на УПАТС Siemens HiPath, легко интегрируется в IP-среде с Microsoft Outlook, IBM Lotus Notes или с контакт-центром  mySAP CRM компании SAP.

Avaya Communication Manager. Это программный комплекс, который реализует в основном IP-приложения на базе протокола CSTA XML и работает с программными объектами, которые называются “CMAPI softphones”

Вестник связи №4 2005
Hide|Show