Экспериментальная оценка временных характеристик протокола ZRTP. Ковцур М.М., Никитин В.Н.

 Ковцур М.М. ,

Никитин В.Н.,

Санкт-Петербургский государственный университет телекоммуникаций

им. проф. М. А. Бонч-Бруевича,

г. Санкт-Петербург

 

В IP-телефонии для установления и поддержания соединения между корреспондентами, как правило, применяются протоколы сигнализации SIP и протокол передачи голосовой информацииRTP/RTCP[1]. В силу общедоступности используемых каналов передачи особую актуальность приобретает обеспечение конфиденциальности VoIP-сервисов. В настоящее время для обеспечения безопасности передачи речи широко используются защищенный протокол реального времени – SRTP[2], который реализует функции криптографической защиты (шифрование и аутентификация сообщений), совместно с протоколом, реализующим генерацию и распределение ключей ZRTP.

 

Рис. 1. Звонок между корреспондентами с использованием SIP/SRTP/ZRTP

 

Поскольку протокол ZRTP работает в самом начале разговора корреспондентов, сразу после завершения работы протокола сигнализации, время установления защищенного соединения увеличивается на величину времени выполнения протокола ZRTP.  Пример установления соединения в защищенном режиме при использовании протокола ZRTP/SRTP  представлен на рисунке 1.

 

SRTP протокол выполняется в режиме реального времени и не вносит изменений в вероятностно-временные характеристики протокола RTP, поэтому в данной работе представлены результаты экспериментального исследования времени работы протокола ZRTP [3,4].

 

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

 

Таким образом, задача оценки вероятностно-временных характеристик протокола ZRTP по каналам с задержками и ошибками является актуальной задачей.

 

Целью эксперимента является оценка влияния потери пакетов в канале передачи данных и задержки  данных при передаче на качество речи, а также оценка среднего времени работы протоколаZRTP. Схема экспериментальной установки приведена на рисунке 2.

 


Рис. 2. Схема экспериментальной установки

Схема состоит из трех компьютеров, управляемого коммутатора и маршрутизатора на базе операционной системы FreeBSD.  Маршрутизатор выполняет роль имитатора канала передачи данных (ПД), воспроизводя различные состояния канала связи, и позволяет  задавать величины двух  параметров канала связи: процент потерянных пакетов, передаваемых через порт маршрутизатора, а также задержку для передаваемых пакетов.

 

На компьютере ПК1  установлено программное обеспечение Wireshark, позволяющее перехватывать и анализировать пакеты, передаваемые между ПК 2 и ПК 3. Для реализации этой цели на управляемом коммутаторе включается функция зеркалирования портов.

 

На ПК2 и ПК3 устанавливаются программы – VoIP клиент Phoner и  программа Zfone.

 

Программа Phoner была выбрана в качестве VoIP клиента, так как она имеет встроенную, настраиваемую поддержку ZRTP протокола. Эта опция позволяет включать/выключать встроенный модульZRTP при проведении тестов. Программа распространяется бесплатно с сайта автора phoner.de.

 

Zfone – программа, созданная Филлом Зимерманом, разработчиком протокола ZRTP. Программа предоставляется бесплатно для некоммерческого использования и получена с сайта The Zfone™ Project http://zfoneproject.com. Фактически данная программа играет роль шлюза для RTP пакетов, преобразуя их в SRTP, а также позволяет выполнять ZRTP протокол между корреспондентами для генерации ключей.  В случае выключения опции поддержки ZRTP на Phoner и запуска программы Zfone – ZRTP протокол будет выполняться средствами программы Zfone, что позволит сравнить поведение протоколаZRTP в реализациях двух разных разработчиков.

 

Для оценки ВВХ протокола ZRTP было произведено несколько измерений времени работы протокола при разных условиях. Перед каждым измерением на LAN интерфейсе маршрутизатора устанавливались параметры:

 

· процент потерянных пакетов, передаваемых через порт маршрутизатора

· задержка для передаваемых пакетов

 

На ПК 3 в программе Phoner был включен режим автоподнятия трубки с воспроизведением тестовой записи. При звонке с ПК 2 на ПК 3, на ПК 2 автоматически включалась запись разговора и сохранялась тестовая запись в том виде и с тем качеством, с которым она была доступна для пользователя.

 

Измерение  проводилось в следующей последовательности:

 

1) установка требуемых величин потери пакетов и задержки канала ПД на маршрутизаторе

2) проверка точности установки задержки/потери пакетов утилитой ping

3) включался сетевой снифер Wireshark на ПК1, совершался звонок ПК2-ПК3, сохранялся дамп данных и запись звонка.

4) по дампу определялось время работы ZRTP и его результаты.

 

Работа протокола ZRTP может быть организована одним из двух способов:

 

1) параллельно с RTP, т.е. до окончания работы ZRTP RTP трафик передается в открытом виде. По окончании работы ZRTP  - голосовой трафик передается зашифрованным в SRTP.

2)до RTP – как только между абонентами включается голосовой канал, ZRTP начинает работать, при этом блокируется передача RTP. Разговор между абонентами начинается по окончании ZRTP, с использованием SRTP.

 

Программа Zfone реализует второй способ, поэтому работу ZRTP можно оценить также по голосовым диаграммам.

 

В качестве источника эталонного речевого сигнала на одном из компьютеров был включен автоответчик, который женским голосом диктует фразу "НАЖМИТЕ 1, ЧТОБЫ ПРИНЯТЬ ЭТОТ ЗВОНОК, НАЖМИТЕ 2, ЧТОБЫ ОТКЛОНИТЬ ЕГО, НАЖМИТЕ 3, ЧТОБЫ ВСЕГДА ПРИНИМАТЬ ЗВОНКИ С ЭТОГО НОМЕРА, НАЖМИТЕ 4, ЧТОБЫ НИКОГДА НЕ ПРИНИМАТЬ ЗВОНКИ С ЭТОГО НОМЕРА,  НАЖМИТЕ 5, ЧТОБЫ СБРАСЫВАТЬ ЗВОНКИ С ЭТОГО НОМЕРА И СООБЩИТЬ ЗВОНЯЩЕМУ, ЧТОБЫ ОН ВНЕС ВАС В СПИСОК АБОНЕНТОВ 'КОМУ НЕ НАДО ЗВОНИТЬ'".  Акустическая диаграмма этого сигнала представлена на рисунке 3.

 


Рис. 3. Запись исходного речевого сообщения

Рис. 4. Записи принятого речевого сообщения с учетом влияния  протокола ZRTP в реализации Zfone.

a) принятый звуковой сигнал  при выключенном протоколе  ZRTP

b) принятый звуковой сигнал  при передаче по каналу с односторонней задержкой 0 мс

c) принятый звуковой сигнал  стороне при передаче по каналу с односторонней задержкой 100 мс

d) принятый звуковой сигнал  стороне при передаче по каналу с односторонней задержкой 300 мс

 

На втором компьютере производилась запись принятого речевого сигнала.  На рисунке 4 приведены голосовые дорожки при передаче тестового звука по схеме – компьютер-компьютер с учетом работы протокола ZRTP. Из рисунка видно, что при работе по каналам связи с задержками время выполнения протокола  может составлять до нескольких секунд. Например, для канала связи с задержкой 300 мс время выполнения протокола составило свыше  2х секунд.  При этом время начала передачи голоса по защищенному каналу между абонентами сдвигается на величину, равную времени работы протокола. 

 

Таблица 1. Усредненные результаты измерения времени выполнения протокола ZRTP

                 Потери                            

                         (Кош)         

Задержка

0%

1%
(5.8*10-6)

5%

 2.9*10-5)

10%

 (6*10-5)

15%

 (9.3*10-5)

0 ms

0,04

0,26

0,42

0,5

0,71

100 ms

0,85

0,99

1,19

1,38

1,90

300 ms

2,55

2,89

3,08

3,19

3,4

 

Результаты измерений для различных задержек и потери пакетов в канале связи приведены в таблице 1. Для устранения случайных погрешностей в таблицу вносилось среднее значение измеряемого времени по результатам 20 измерений.

 

На рисунке 5, а также в таблице 1 представлены результаты оценки среднего времени выполнения протокола, полученные на основании проведенных измерений и экспериментов.


Рис. 5. Зависимость времени выполнения протокола ZRTP от вероятности ошибки и от задержки в канале связи

 

При анализе полученных данных, можно сделать следующие выводы:

 

1. Исследование показывает, что среднее время работы протокола ZRTP определяется в основном величиной задержки сообщений в канале связи.

2. Зависимость среднего времени работы протокола ZRTP от вероятности битовых ошибок в каналах хорошего и удовлетворительного качества слабо выражена, но существенно возрастает, при увеличении вероятности ошибок свыше 1•10-4.

3. Среднее время работы протокола ZRTP в каналах с задержкой, превышающей 300 мс, превышает 2,5 с и в зависимости от используемого режима защищенной IP телефонии приводит либо к потере соответствующего фрагмента речевого сообщения, либо к передаче этого фрагмента речи в незащищенном режиме.

 

Таким образом, имеются существенные предпосылки для совершенствования протокола ZRTP с целью снижения зависимости времени работы протокола от задержки в канале.

 

Библиографический список

 

 [1] - Request for Comments: 3550,     Category: Standards Track, Network Working Group D. Schulzrinne Columbia University Obsoletes: 1889 S. Casner   Packet Design Frederick Blue Coat Systems Inc. V. Jacobson Packet Design, July 2003, RTP: A Transport Protocol for Real-Time Applications.

[2] - Request for Comments: 3711,      Category: Standards Track,  M. Baugher Request for Comments: 3711 D. McGrew Cisco Systems, Inc. M. Naslund, E. Carrara K. Norrman Ericsson Research. March 2004. The Secure Real-time Transport Protocol (SRTP).

[3] - Request for Comments: 6189, P. Zimmermann, A. Johnston, Ed. J. Callas Apple, Inc. ZRTP: Media Path Key Agreement for Unicast Secure RTPISSN: 2070-1721 Internet Engineering Task Force  (IETF) April 2011.

[4] - Ковцур М. М., Никитин В. Н., Юркин Д. В. Протоколы обеспечения безопасности VoIP-телефонии // Защита информации. Инсайд. 2012, №3, с. 74–81.