Применение DSP для оптимизации защиты информации в сетях VoIPoW
Иванова Н.Ю., Лысенков С.А. (lansi @rambler.ru), Солодов А.Г.
Поволжская государственная академия телекоммуникации и информатики Введение
Передача информации с использованием транспортных протоколов TCP/IP приобретает сегодня всё большую популярность. Следует заметить, что каналы Интернет, по своей сути, не гарантируют постоянства параметров IP-соединения. Кроме того, такие каналы часто вообще не обладают сколько-нибудь приемлемыми параметрами для передачи речевого трафика в реальном времени.
Под IP-телефонией понимается технология использования IP-сети (Internet или любой другой) в качестве средства организации и ведения телефонных разговоров, передачи факсов в режиме реального времени [1]. В общих чертах передача голоса в IP-сети происходит следующим образом:
• входящий звонок и сигнальная информация из телефонной сети передаются на пограничное сетевое устройство, называемое телефонным шлюзом, и обрабатываются специальной картой устройства голосового обслуживания.
• шлюз, используя управляющие протоколы семейства H.323, перенаправляет сигнальную информацию другому шлюзу, находящемуся на приемной стороне IP-сети.
• приемный шлюз обеспечивает передачу сигнальной информации на приемное телефонное оборудование согласно плану номеров, гарантируя сквозное соединение. После установления соединения голос на входном сетевом устройстве оцифровывается (если он не был цифровым), кодируется в соответствии со стандартными алгоритмами ITU, такими как G.711 или G.729, сжимается, инкапсулируется в пакеты и отправляется по назначению на удаленное устройство с использованием стека протоколов TCP/IP.
Таким образом, используя IP-сеть, можно обмениваться цифровой информацией для пересылки голосовых или факсимильных сообщений между двумя компьютерами в режиме реального времени. Применение Internet позволяет реализовать данную службу в глобальном масштабе.
IP в WLL
Основная цель разработки концепции беспроводной IP-телефонии (VoIPoW) [2] - это перенос речевых услуг на новую транспортную платформу, основанную на коммутации пакетов, с сохранением качества связи, характерного для современных сетей с коммутацией каналов (например, GSM). Для достижения этой цели необходимо решить несколько проблем, связанных с обеспечением качества услуг как в магистральной сети, так и в сети радиодоступа. Речевые услуги должны стать интегральной частью разговорных мультимедийных услуг, и долгосрочное решение в этой области подразумевает их базирование на беспроводной IP-технологии.
Следует заметить, что условия, необходимые для передачи речевого потока, являются более жесткими по сравнению с условиями передачи других потоков мультимедийного сеанса связи; это касается, в частности, требований к частоте появления ошибок (BER) и временной задержке. Использование радиоинтерфейса для доступа к Интернет и услугам IP-телефонии осложняется еще и тем обстоятельством, что емкость радиоканала — это очень ограниченный ресурс, который надо использовать максимально рационально.
Следовательно, важным требованием к сети радиодоступа является обеспечение высокой эффективности использования спектра [3].
Для повышения этой эффективности можно классифицировать различные потоки пакетов по их требованиям к полосе пропускания и задержкам. Подобная классификация будет полезна и при реализации алгоритмов управления доступом. Также можно применять механизмы сжатия заголовков RTP/UDP/IP и сообщений сигнализации. Существенно уменьшая объем служебной информации, они позволяют использовать спектр почти столь же эффективно, как и при беспроводной передаче речи по сети с коммутацией каналов.
Сжатие заголовков
Большие заголовки пакетов, переносящих речь через IP-сети, — одна из основных проблем, стоящих перед разработчиками систем беспроводной IP-телефонии. Пакет IP с речевой информацией имеет в своем составе заголовки IP (20 байт), UDP (8 байт) и RTP (12 байт) — итого 40 байт служебной информации (в случае IPv6 эта цифра увеличивается до 60), тогда как размер собственно речевого кадра в зависимости от используемого кодека составляет всего 15—30 байт. Приведенные цифры являются сильным аргументом в пользу решения о терминировании IP-трафика перед радиоинтерфейсом: заголовки IP/UDP/RTP занимают слишком большую часть полосы пропускания и делают неэффективным использование ценного радиоспектра. Тем не менее данную проблему можно обойти с помощью алгоритмов сжатия заголовков.
В заголовках соседних пакетов, принадлежащих одному и тому же потоку, очень много избыточной информации; этот факт и используется алгоритмами сжатия заголовков. Подобные алгоритмы сохраняют на обоих концах канала так называемый контекст — по сути, это полная (несжатая) версия последнего переданного заголовка. Сжатые заголовки несут в себе только информацию об изменениях контекста: неизменные поля не передаются, а поля с небольшими изменениями обновляются путем передачи всего нескольких битов. Однако в случае потери или повреждения пакетов в процессе передачи контекст на принимающей стороне не будет обновлен корректно, и развертывание последующих сжатых заголовков даст неправильные результаты. Поэтому алгоритмы сжатия заголовков должны иметь механизмы для обнаружения устаревших контекстов и восстановления контекста принимающей стороны в случае ошибок.
Предложенный Инженерной проблемной группой Интернет (IETF) алгоритм сжатия заголовков CRTP (compressed RTP) при передаче речи по IP способен сжимать 40-байтовые заголовки IPv4/UDP/RTP до 2 байт. Для восстановления контекста CRTP использует обратный канал, по которому декомпрессор посылает запросы на обновление заголовков. Очевидно, что все пакеты, получаемые в то время, пока контекст остается некорректным, будут потеряны, поскольку в этом случае восстановить их заголовки невозможно. Следовательно, эффективность механизма восстановления контекста будет в первую очередь зависеть от времени прохождения сигнала по каналу туда и обратно. Моделирование показывает, что при использовании CRTP частота потери пакетов примерно в четыре раза выше той, что допускается оптимальной схемой реализации IP-телефонии в системах на основе технологии WCDMA. Значит, для систем беспроводной IP-телефонии нужна другая, более надежная схема сжатия заголовков.
Такую схему разработали специалисты компании Эрикссон [4]. Это ROCCO (robust checksum-based header-compression) — схема, основанная на использовании контрольной суммы. Она обеспечивает высокую степень сжатия и достаточную надежность для приложений сотовой связи. Вычисляемая для исходного (несжатого) заголовка контрольная сумма включается в сжатый заголовок и позволяет определить, во-первых, корректность контекста, а во-вторых, правильность его локального восстановления.
Более того, для достижения действительно высокой степени сжатия и хорошей надежности без потери общности метода специалисты Эрикссон разработали также концепцию профилей компрессии. Чтобы достичь оптимальной производительности, при
обработке различных RTP-потоков на различных каналах используются разные профили. Разрабатываются профили для речевых и видеопотоков; могут быть созданы и универсальные профили.
Помимо контрольной суммы, алгоритм ROCCO включает в сжатый заголовок специальный код с информацией об изменениях полей заголовка. Для профиля IP-телефонии данный код содержит достаточно информации о заголовках предыдущих пакетов для локального восстановления контекста даже после потери до 26 последовательных пакетов на пути между компрессором и декомпрессором. При использовании профиля с максимальным коэффициентом сжатия минимальный размер сжатого заголовка составит 1 байт. Возможность локального восстановления заголовков практически устраняет негативное влияние большого времени круговой задержки на работу алгоритма сжатия заголовков.
Речевые кодеки
Одним из важных факторов эффективного использования пропускной способности IP-канала, является выбор оптимального алгоритма кодирования/декодирования речевой информации - кодека. Все существующие сегодня типы речевых кодеков по принципу действия можно разделить на три группы:
1. Кодеки с Импульсно Кодовой Модуляцией (ИКМ) и Адаптивной Дифференциальной Импульсно Кодовой Модуляцией (АДИКМ), появившиеся в конце 50 -х годов и использующиеся сегодня в системах традиционной телефонии. В большинстве случаев, представляют собой сочетание АЦП/ЦАП
2. Кодеки с вокодерным преобразованием речевого сигнала возникли в системах мобильной связи для снижения требований к пропускной способности радиотракта. Эта группа кодеков использует гармонический синтез сигнала на основании информации о его вокальных составляющих - фонемах. В большинстве случаев, такие кодеки реализованы как аналоговые устройства.
3. Комбинированные (гибридные) кодеки сочетают в себе технологию вокодерного преобразования/синтеза речи, но оперируют уже с цифровым сигналом посредством специализированных DSP. Кодеки этого типа содержат в себе ИКМ или АДИКМ кодек и реализованный цифровым способом вокодер.
Одной из самых распространенных разновидностей методов кодирования является метод LD-CELP - Low-Delay Code-Excited Linear Prediction (метод линейного предсказания с кодовым возбуждением и низкой задержкой). Он позволяет достичь удовлетворительного качества воспроизведения при пропускной способности 16 кбит/с. Этот метод был стандартизован ITU в 1992 г. как алгоритм кодирования речи G.728. Алгоритм применяется к цифровой последовательности, получаемой в результате аналого-цифрового преобразования речевого сигнала с 16-разрядным разрешением. В марте 1995 г. ITU принял новый стандарт -G.723. Основой G.723 являются методы сжатия речи MP-MLQ (Multipulse Maximum Likelihood Quantization) и ACELP. Они позволяет добиться весьма существенного сжатия речи при сохранении достаточно высокого качества воспроизведения. Характеристики некоторых основных алгоритмов кодирования речи приведены в табл. 1 [5,6].
Таблица 1. Основные характеристики наиболее известных типов вокодеров
Название Рекомендация Скорость Размер речевого Задержка
алгоритма алгоритма кадра накопления (мс)
(кбит/с) (октетов)
CS-ACELP ITU G.729 8 10 10
PCM ITU G.711 64 40 5
56 35 5
48 30 5
ADPCM ITU G.726 40 25 5
32 20 5
24 15 5
16 10 5
LD-CELP ITU G.728 16 10 5
MP-MLQ ITU G.723.1 6.3 24 30
ACELP ITU G. 723 .1 5.3 20 30
Важной характеристикой любого вокодера является качество воспроизводимой речи. Для того, чтобы оценить это качество, было введено понятие средней субъективной оценки (MOS - mean opinion score) или психологической реакции человека на воспроизводимую речь. Оценка по шкале MOS определяется путем обработки оценок, даваемых группами слушателей. В табл. 2 приведены оценки MOS для различных методов кодирования.
Таблица 2. Показатели MOS основных алгоритмов кодирования речи
Название алгоритма MOS
G.711 (PCM; 64 кбит/с) 4,1
G.726 (ADPCM; 32 кбит/с) 3,8
G.728 (LD-CELP; 16 кбит/с) 3,6
G.723.1 (ACELP; 5,3 кбит/с) 3,7
G.723.1 (MP-MLQ; 6,3 кбит/с) 3,9
Наиболее предпочтительным среди приведенных методов кодирования с точки зрения соотношения качество речи / скорость потока является алгоритм G.723.1(ACELP).
Защита информации
Если проблемы ограничения задержки, подавления эха и защиты информации от несанкционированного доступа в традиционной телефонии существовали всегда, то при переходе к 1Р-сетям лишь усугубились. Проблема потери пакетов существенно осложняет задачу применения криптографических методов защиты в I? телефонии. Таким образом, потеря даже одного пакета приводит к нечитаемости всего сообщения. Если в традиционной компьютерной 1Р сети существует стандартная процедура запроса потерянного пакета, то в 1Р телефонии она не применима, так как из-за повторных запросов возникает дополнительная задержка на непредсказуемый интервал времени.
В данном разделе рассмотрен возможный путь решения проблемы использования криптографических методов защиты информации для сетей 1Р телефонии.
Сжатый по алгоритму ACELP речевой сигнал должен упаковываться в 1Р пакеты. Но поскольку нельзя шифровать 1Р пакеты (происходит потеря служебной информации)
шифратор должен находиться на выходе вокодера, то есть шифровать сообщение до упаковки в IP пакеты. Для решения проблемы нечитаемости всего сообщения в случае потери пакетов предлагается добавлять служебную информацию о номере пакета на стадии шифрования (уже при 5 битах дополнительного заголовка потеря 31 пакета последовательно, не влияет на читаемость сообщения), тем самым при расшифровке дешифратор всегда будет знать, какую часть ключа ему применять к данному пакету. Для проверки данного предположения выбран алгоритм DES [7].
Входной блок данных делится пополам на левую L' и правую R' части. После этого формируется выходной массив так, что его левая часть представлена правой частью R' входного, а правая R'' формируется как сумма L' и R' операцией XOR. Далее выходной массив шифруется перестановкой с заменой. Все проведенные операции могут быть обращены, и расшифровывание осуществляется за число операций, линейно зависящее от размера блока. После нескольких таких " взбиваний " можно считать, что каждый бит выходного блока шифровки может зависеть от каждого бита сообщения. Свое развитие DES получил в ГОСТ 28147-89 [8], который увеличил длину ключа до 256 бит и допустил произвольные перестановки.
Цифровые процессоры обработки сигналов (DSP)
Узкополосному кодированию речевых сигналов дорогу на рынок коммерческих приложений открыло развитие микроэлектроники и, в частности, появление дешевых процессоров цифровой обработки сигналов (DSP - Digital Signal Processor) в интегральном исполнении. Процессоры DSP имеют архитектуру, оптимизированную для выполнения операций, которые характерны для типичных алгоритмов обработки сигналов. В качестве примеров таких операций можно назвать умножение с накоплением, а также выборку операндов с бит-инверсной адресацией, необходимую для выполнения быстрого преобразования Фурье.
Архитектура процессоров DSP [9] характеризуется наличием нескольких вычислительных блоков, обеспечивающих выполнение одновременных операций в одном такте работы процессора. Для загрузки вычислительных блоков данными предусматривается несколько шин передачи данных и многопортовая память данных. Для увеличения производительности память инструкций и память данных разделены, а доступ к ним осуществляется по раздельным шинам. Для процессоров DSP характерно использование инструкций увеличенной длины, содержащих поля для управления всеми вычислительными блоками.
Физически процессоры DSP выполняются в виде интегральных микросхем, содержащих в одном кристалле ядро процессора, память и периферийные устройства для обмена информацией. Наличие встроенной памяти обеспечивает быстрый доступ ядра к ее содержимому для получения максимальной производительности.
Существует множество модификацией процессоров DSP, различающихся производительностью, объемом памяти, потребляемой мощностью. В оборудовании IP-телефонии используются дешевые процессоры со средней производительностью и малой потребляемой мощностью, ориентированные на реализацию малого числа (единицы) каналов обработки речевой информации и применяемые, в основном, в составе терминальных устройств, или мощные высокопроизводительные процессоры, ориентированные на многоканальные (десятки каналов) приложения и используемые в составе таких групповых устройств как многоканальные шлюзы IP-телефонии, подключаемые к ТфОП по цифровым трактам Е1. Одними из самых известных производителей DSP являются фирмы Motorola (www.motorola.com), Texas Instruments (www.ti.com), Analog Devices (www.analog.com).
Система Code Composer Studio разработана специально для использования совместно с DSP фирмы Texas Instrument. Объединяет в себе возможности редактора, отладчика, компоновщика и компилятора. Позволяет в масштабе реального времени проводить анализ данных и осуществлять их просмотр визуально(например, график загрузки ЦПУ). В этой
среде смоделирован речевой кодек со встроенной системой защиты информации от несанкционированного доступа в сетях беспроводной 1Р телефонии. Для реализации из семейства процессоров ТМ8320С6000 был выбран процессор ТМ8320С6201-200 с временем такта 5^ и с памятью данных/программ 512 К/512К, с интерфейсом синхронизации памяти 32 бита. Этот процессор характеризует невысокая стоимость(около 100$) и необходимое быстродействие для выполнения поставленной задачи.
В ходе тестирования модели данного кодека было установлено, что потеря пакетов не влияет на читаемость информации. Данный кодек обеспечивает приемлемое время задержки, качества речи и защиту передаваемой информации в сетях беспроводной 1Р телефонии. Процессор подобран оптимально, что подтверждает график загрузки ЦПУ (рисунок 1).
Список литературы
Рисунок 1. График загрузки ЦПУ
1. Гольдштейн B.C., Пинчук А.В., СуховицкийА.Л., IP-Телефония. — М.: Радио и связь, 2001.
2. ERO finalizes a study on WLL solutions for CEPT, Local Loop Report, N5, 2003.
3. Д.Г. Мирошников. Современные решения беспроводного доступа. «Электросвязь», №4, 1998.
4. Г. Эрикссон, Б. Олин, К. Сванбро, Д. Турина.Оптимизация решений для беспроводной IP-телефонии. «Сети и системы связи» №10, 2000.
5. Иванова Н.Ю., Лысенков С.А., Солодов А.Г.. Реализация алгоритмов кодирования речевого сигнала на DSP. 5 МНТК, СамГТУ, Самара, 2004.
6. «Кодек со встроенной системой защиты информации от несанкционированного доступа для сетей IP телефонии", электронный журнал «Исследовано в России», 177, стр. 1895-1899, 2004 г. http://zhurnal.ape.relarn.ru/arcticles/2004/177.pdf
7. Иванова Н.Ю., Лысенков С.А., Солодов А.Г. Реализация стандарта DES на DSP.
8. ГОСТ 28147-89. М.: Издательство стандартов, 1989.
Texas Instrument, Inc. "TMS320C6000 Programmer's Guide"