Алгоритм распределения потокового трафика и трафика реального времени в гетерогенной беспроводной сети

УДК 004.4, 004.7

Е.А. Пакулова

АЛГОРИТМ РАСПРЕДЕЛЕНИЯ ПОТОКОВОГО ТРАФИКА И ТРАФИКА РЕАЛЬНОГО ВРЕМЕНИ В ГЕТЕРОГЕННОЙ БЕСПРОВОДНОЙ СЕТИ*

Целью работы являлось разработка алгоритма распределения потокового трафика и трафика реального времени (Sender - Side Path Scheduling, SSPS) в беспроводной гетерогенной сети, который позволяет оптимизировать передачу данных потокового трафика и трафика реального времени при использовании нескольких беспроводных сетей путем распараллеливания трафика. Алгоритм может быть использован в приложениях, работающих с передачей потокового трафика и трафика реального времени в условиях наличия нескольких сетей доступа и недостаточной пропускной способности для передачи данных каждой из них в отдельности. Проведен анализ существующих решений, оптимизирующих передачу потокового трафика и трафика реального времени, выделены их недостатки. Построен образец простой системы передачи потокового трафика и трафика реального времени и реализован алгоритм SSPS (на базе сетей WLAN (IEEE 802.11 g) и 3 G). Предложенный алгоритм позволяет оптимизировать взаимодействие беспроводных сетей доступа, а также повысить надежность передачи данных.

Гетерогенная беспроводная сеть; параметры беспроводной сети доступа; взаимодействие беспроводных сетей доступа; потоковый трафик; трафик реального времени.

E.A. Pakulova

SENDER-SIDE PATH-SCHEDULING ALGORITHM FOR VIDEO STREAM ALLOCATION IN HETEROGENEOUS WIRELESS NETWORK

The main purpose of a project was development of Sender-side Path Scheduling (SSPS) algorithm. This algorithm parallelizes traffic of an application. Thus it allows to optimize the transmission of streaming and real-time traffic using several access wireless network simultaneously. The proposed algorithm can be used with several wireless technologies and under throughput restrictions. Also the survey of existing method was done. At the current stage of an investigation the prototype of a simple system for transmission streaming and real-time traffic was build (on the basis of WLAN (IEEE 802.11g) and 3G). The proposed algorithm also allows to increase the reliability of video data transmission and to optimize wireless networks interaction.

Heterogeneous wireless network; wireless network parameters; interaction of wireless access network; streaming and real-time traffic.

Использование большого числа беспроводных персональных устройств стало привычным в современном обществе. Мобильность - это важный фактор успеха для любой современной компании. Ее достигают, используя различные мобильные устройства: ноутбуки, нетбуки, планшеты, смартфоны и другие средства с беспроводным доступом к сети. Согласно парадигме «Always Best Connected» [1] пользователям беспроводных устройств связи необходимо получать полный спектр сервисов в любом месте и в любое время. В то же время провайдеры услуг связи предлагают большой набор технологий для передачи данных, которые различаются параметрами качества обслуживания (пропускной способностью канала, коэффициентом потерь, задержкой), стоимостью услуг связи, зоной покрытия и пр. Различные технологии связи призваны удовлетворять требования различных приложений пользователя.

*

Работа выполнена при поддержке государственного задания от Минобрнауки и Службы академических обменов Германии. Проект № 11.7203.2013.

Одним из самых распространенных сервисов является передача потокового трафика и трафика реального времени. Согласно отчету компании С1бсо [2] передача видеоконтента будет составлять 80-90 % от передачи всего трафика в сети к 2017 г. Однако, в настоящее время, беспроводные технологии связи не могут предоставить достаточной пропускной способности канала и малого коэффициента потерь [3]. Поэтому задача оптимизации передачи потокового трафика и трафика реального времени (с удовлетворением требований качества обслуживания) по-средствам беспроводных сетей доступа является крайне актуальной.

Сложность передачи видеоконтента высокого качества посредствам беспроводных сетей доступа обусловлена следующими факторами:

♦ переменная пропускная способность беспроводных сетей доступа;

♦ высокий уровень потерь.

♦ большая задержка.

Для решения проблемы ограниченных характеристик беспроводной сети при передаче видеоконтента высокого качества в мировой научной и производственной практике предлагается формирование гетерогенной беспроводной сети путем интеграции различных беспроводных сетевых технологий доступа и совместного использования их ресурсов. В этом случае мобильные устройства пользователей должны обладать несколькими интерфейсами связи и выбирать в данный момент времени ту сеть связи, которая наилучшим образом удовлетворяет требованиям приложения пользователя. В случае если ни одна сеть доступа не удовлетворяет требованиям приложения, могут быть одновременно использованы две и более сетей доступа [3].

Одновременное использование нескольких сетей доступа открывает ряд интересных возможностей:

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

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

♦ Надежность. Для обеспечения надежности передачи данных для критичных приложений возможно дублирование отправления всех или некоторых пакетов приложения по различным сетям доступа.

♦ Распределение нагрузки. Использование нескольких альтернативных сетей доступа позволяет распределить нагрузку на сети доступа [3].

Несмотря на ряд преимуществ одновременного использования нескольких сетей доступа, существует и ряд проблем, которые необходимо решить для успешной работы подобных алгоритмов:

♦ Неправильный порядок пакетов потока [3]. Неправильный порядок пакетов потока возникает, когда порядок пакетов на стороне отправителя одного потока отличается от порядка пакетов на стороне получателя того же потока.

♦ Общий неправильный порядок пакетов. Поскольку пакеты приложения распределяются между несколькими потоками, возникает общий неправильный порядок пакетов, который возникает из-за различных односторонних задержек путей.

♦ Повышенное потребление энергии [3]. Использование нескольких технологий связи ведет к повышению потребления энергии передающим и принимающим устройствами, что приводит к сокращению времени работы устройств.

Следует заметить, что под потоком понимается часть трафика, передаваемого по отдельной сети доступа.

Анализ известных результатов. За последние несколько лет предложен ряд решений одновременного использования нескольких сетей доступа для передачи данных. Большинство из них посвящено проблеме агрегации пропускных способностей используемых сетей доступа. Данная задача может быть адресована на различных уровнях сетевого стека протоколов модели OSI: прикладном, транспортном, сетевом и логическом [3].

Наиболее значимой работой в области агрегации пропускной способности является решение Earliest delivery path first (EDPF), предложенное Chebrolu и Rao в [4]. В данной работе было предложено оценивать время получения пакета данных получателем, используя такие параметры сети как доступная пропускная способность и задержка для каждого потока, а также размер каждого пакета. EDPF отправляет очередной пакет только в тот поток, где время получения пакета будет наименьшим. Данный подход позволяет уменьшить количество пакетов, прибывших в неправильном порядке. Однако EDPF не рассматривает коэффициент потерь и возможность одновременного использования нескольких интерфейсов связи.

D. Jurca и P. Frossard в [5] предлагают алгоритм Heuristic load balancing (LBA), который отправляет пакет только в том случае, если предполагаемое время получения пакета меньше чем предельный конечный срок его декодирования в выбранном потоке. В случае если пакет не может быть декодирован в предельный срок, он отбрасывается и не передается. В [5] также предложили схему назначения приоритета пакетам, которая назначает приоритет фреймам, исходя из их значимости при кодировании видео. Таким образом, LBA сортирует пакеты согласно их приоритету, увеличивая вероятность передачи пакетов с более высоким приоритетом. Однако LBA не рассматривает возможность работы в беспроводной среде.

V. Singh, A. Ahsan и J. Ott в [6] предложили решение для распараллеливания передачи данных для трафика реального времени. Для реализации данного алгоритма в [6] используется проект протокола MPRTP (Multipath transport protocol for real-time applications) [7], который еще не стандартизирован. Используя RTCP RR пакеты и получая данные о количестве потерь для каждого потока, алгоритм определяет загруженные, частично загруженные и незагруженные потоки. Взяв за основу полученное разделение, а также доступную пропускную способность для каждого потока, алгоритм вычисляет скорость передачи данных для каждого потока, начиная с загруженных. В дополнение в [7] также предложен алгоритм контроля размера принимающего буфера на стороне получателя, который позволяет изменять размер буфера получателя, основываясь на параметрах сети и снижая задержку воспроизведения видео.

Наилучший обзор алгоритмов агрегации пропускной способности сделан Ramboly, Falowo и Chan в [3]. Они предложили классификацию алгоритмов агрегации пропускной способности в гетерогенной сети, а также провели их сравнительный анализ. Основываясь на данных, приведенных в [3], и анализе решений [4-6], можно сделать следующие вывод:

♦ практически все решения используют одну сеть доступа в каждый момент времени, что вносит дополнительные временные затраты на переключение сетей;

♦ мало решений, направленных на работу в беспроводных сетях доступа;

♦ практически нет решений, обеспечивающих надежную передачу данных;

♦ нет решений, обеспечивающих высокое качество визуального восприятия видеопотока при недостаточной пропускной способности гетерогенной сети.

Предлагаемое решение. Топология и протоколы. В рамках работы был разработан и реализован алгоритм распределения потокового трафика и трафика реального времени (Sender-Side Path Scheduling, SSPS), который позволяет оптимизировать передачу данных потокового трафика и трафика реального времени при использовании нескольких беспроводных сетей путем распараллеливания трафика.

Для решения данной задачи необходимо разработать архитектуру системы, которая будет поддерживать множество потоков передачи данных. В качестве основы возьмем проект протокола мультипотоковой передачи данных MPRTP (Multipath RTP) [7]. MPRTP схож с протоколом RTP (Transport protocol for Real-Time Applications) [8], предназначенного для передачи трафика реального времени. MPRTP, также как и RTP, предоставляет информацию о времени передачи, идентификации участников взаимодействия и о приложении посредством контрольных пакетов между отправителем и получателем (RTCP пакеты). Однако RTP и RTCP подразумевает один поток между отправителем и получателем.

MPRTP расширяет возможности RTP и позволяет использовать несколько потоков для передачи данных, обеспечивая функции мониторинга состояния каналов посредством RTCP пакетов для каждого потока. MPRTP назначает уникальный идентификатор для каждого потока. Поток считается уникальным, если у него IP-адреса отправителя и получателя, а также номера портов различны. Для мониторинга количества потерянных и отброшенных пакетов, а также джиттера (разброса максимального и минимального времени прохождения пакета от среднего), в MPRTP реализована нумерация пакетов в пределах потока. Номер потока и номер пакета в пределах данного потока включен в расширение заголовка RTP пакета при реализации MPRTP протокола, что гарантирует совместимость протоколов RTP и MPRTP [6]. MPRTP обеспечивает надежный механизм взаимодействия потоков, однако он не предлагает алгоритмов выбора потоков, подходящих для передачи данных.

Архитектура системы. Выбор потоков для передачи данных осуществляется SSPS алгоритмом. На рис. 1 представлена упрощенная архитектура системы, реализующая распараллеливание трафика. В рамках данной архитектуры отправитель и получатель могут взаимодействовать посредством нескольких потоков, различающимися интерфейсами передачи данных. Взаимодействие различных технологий связи обеспечивается средствами MPRTP [7].

Рис. 1. Упрощенная архитектура системы распараллеливания трафика

Характеристика потоков. Основываясь на информации от RTCP RR пакетов, алгоритм SSPS получает значения следующих параметров сети:

♦ коэффициент потерь пакетов (Packet Loss Rate - PLR);

♦ общее количество потерянных пакетов;

♦ разброс времени получения пакетов;

♦ задержка от времени получения последнего RTCP SR пакета.

Используя эту информацию, а также информацию со стороны отправителя

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

Рассматривая коэффициент потерь пакетов для каждого потока, алгоритм SSPS определяет загруженные и незагруженные потоки. Поток, который показывает потери, рассматривается как загруженный. Поток без потерь - как незагруженный.

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

Расчет пропускной способности. Расчет значения пропускной способности для потока производится на стороне отправителя на основе информации предоставляемой RTCP RR. Пропускная способность для потока j при получении i пакета RR рассчитывает как:

D payload-

Bj — ------’

Ll Ll~l

где - количество бит, отправленных между двумя последовательными

пакетами RR; tt, tx - времена получения двух последовательных RR пакетов.

Расчет коэффициента потерь пакетов. Для расчета коэффициента потерь пакетов (PLR) используется коэффициент относительных потерь (Fraction lost rate). Коэффициент относительных потерь вычисляется отправителем исходя из информации, полученной из RTCP RR пакета. Коэффициент относительных потерь находится по формуле [8]:

„ . , 256*number of packets lost

FracL о s t — ------------- -------------------------------,

number of packets expected

где - количество ожидаемых пакетов и

- количество потерянных пакетов. Количество потерянных пакетов вычисляется путем вычитания количества полученных пакетов из количества ожидаемых пакетов [8].

Распределение нагрузки в гетерогенной беспроводной среде

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

Стоит отметить, что алгоритм SSPS оперирует пакетами, а не фреймами. На рис. 2 и 3 видно, что распределение пакетов делает алгоритм более гибким, чем при распределении фреймов. В данном случае проводился эксперимент с простым алгоритмом Round Robin и сетями доступа 3G (красная линия) и WLAN (IEEE 802.11g) (синяя линия).

Рис. 2. Распределение фреймов при Round Robin

Рис. 3. Распределение пакетов при Round Robin

В следующих секциях опишем основные фазы алгоритма SSPS.

Начальная фаза алгоритма SSPS. В начальный момент времени алгоритм SSPS не обладает информацией о характеристиках потоков. Для получения необходимой информации и снижения вероятности потерь алгоритм распределяет ре-дундантную информацию на каждый из доступных ему интерфейсов. Как только алгоритм получает необходимый объем информации о потоках, он вычисляет, какое количество информации можно распределить на каждый из потоков.

Вся необходимая для этого информация содержится в ЯТСР ЯЯ пакетах. После получения первого ЯТСР ЯЯ пакета алгоритм вычисляет доступную пропускную способность как:

_ рау1оай-

В ~ і0-Н '

где Ь0 - время отправления первого ЯТР пакета, а - время получения первого ЯТСР ЯЯ пакета.

Распределение информации на потоки. Описание алгоритма 88Р8 дано на псевдокоде на рис. 4. Алгоритм 88Р8 можно свести к следующим шагам:

1) получить ЯТСР ЯЯ пакеты для каждого из потоков;

2) обновить буфер переменной длины ЯТСР_ЯЯ;

3) определить загруженные и незагруженные потоки;

4) вычислить значения средней пропускной способности для каждого из потоков, основываясь на информации, расположенной в буфере переменной длины (ЯТСР_ЯЯ) (см. строку 9 рис. 4);

5) если обнаружены потери для потоков согласно последним ЯТСР ЯЯ, то вычислить значения средней пропускной способности только для этих потоков;

6) если значение пропускной способности незагруженных потоков больше, чем значение их средней пропускной способности, то вычислить значения средней пропускной способности для них;

7) отсортировать значения средней пропускной способности всех потоков (см. строку 12 рис. 4);

8) определить скорость отправления битов информации для каждого из потоков, начиная с потока с наименьшим значением средней пропускной способности (скорость отправления битов информации для потока вычисляется как отношение средней пропускной способности потока к суммарной средней пропускной способности всех потоков, умноженной на нераспределенную скорость кодирования видео (см. строку 18 рис. 4)).

Кроме того, до распределения входящих пакетов алгоритм 88Р8 проверяет возможность передачи данных без потерь путем сравнения суммарной пропускной способности всех потоков со скоростью кодирования видео. Если суммарная пропускная способность меньше чем, скорость кодирования видео, то алгоритм выбирает для передачи только 1-фреймы из последовательности видео (см. строки 13-16 рис. 4).

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

В случае если алгоритм 88Р8 определил скорость отправления битов пакетов для всех потоков, но этого недостаточно для распределения пакетов согласно скорости кодирования видео, алгоритм увеличивает скорость отправления битов пакетов для незагруженных потоков до тех пор, пока скорости отправления будет достаточно для передачи пакетов приложения (см. строки 22-30 рис. 4). Однако если все потоки загружены, скорость отправления пакетов приложения также увеличивается и для них.

Интервал пересчета распределения информации на потоки. Поскольку перерасчет распределения информации на потоки алгоритмом 88Р8 при получении каждого пакета ЯТСР ЯЯ внесет дополнительные временные задержки, необходимо определить интервал работы алгоритма. Основываясь на идее расчета ЯТСР интервала в [8, 9] и идеи, рассмотренной в [7], вычислим интервал пересчета распределения информации на потоки как:

ЬсН= Р-Т,0. Б</3<1. Б ,

где f> - случайная величина, которая позволяет предотвратить синхронизацию нескольких отправителей, использующих для отправления один и тот же интерфейс (поток); Т - RTCP интервал.

Require: RTCP-RR <— information from RTCP RR packets about bandwidth (Bi), packet loss rate {each element of SAvB characterizes by average bandwidth value for a path and number of a path}

Рис. 4. Алгоритм Sender-side Path Scheduling

Выводы и перспективы развития. Основным результатом работы является алгоритм SSPS, который позволяет агрегировать пропускную способность всех доступных сетей беспроводной связи и распределять нагрузку по ним. Предложенный алгоритм позволяет увеличить надежность передачи данных при передаче большого количества данных в условиях ограниченности ресурсов сети.

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

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1. Gustafsson E., Jonsson A. Always Best connected // IEEE Wireless Communications. - February 2003. - Vol. 10, Issue 1. - P. 49-55

2. Cisco Visual Networking Index: Forecast and Methodology, 2012-2017. May 2013.

3. Ramboli A.L., Falowo O.E., Chan A.H. Bandwidth aggregation in heterogeneous wireless networks: A survey of current approaches and issues // Journal of Network and Computer Applications. - May, 2012, № 35. - P. 1б74-1б90.

4. Chebrolu K. and Rao R.R. Bandwidth Aggregation for Real-Time Applications in Heterogeneous Wireless Networks // IEEE Mobile Transactions on Mobile Computing. - April, 200б.

- Vol. 5, № 4. - P. 3ВВ-403.

5. Jurca D. and Frossard P. Video Packet Selection and Scheduling for Multipath Streaming // IEEE Transactions on Multimedia. - April, 2007. - Vol. 9, № 3. - P. б29-б41.

6. Singh V., Ahsan A. and Ott J. MPRTP: Multipath Considerations for Real-time Media // MMSys ’13, Proceedings of the 4th ACM Multimedia Systems Conference. - February 2б-March 1, 2013. - P. 190-201.

7. Singh V., Karkkainen T., Ott J. and Ahsan S. Multipath RTP (MPRTP), 2012. IETF Draft, draft-singh-avtcore-mprtp.

В. Schulzrinne H., Casner S., Frederick R. and Jacobson V. RTP: A Transport Protocol for RealTime Applications., RFC 3550, 2003.

9. Extended RTP Profile for Real-time Transport Control Protocol (RTCP)-Based Feedback (RTP/AVPF), RFC 45В5.

Статью рекомендовал к опубликованию к.т.н. С.А. Третьяков.

Пакулова Екатерина Анатольевна - Южный федеральный университет; e-mail:

epakulova@sfedu.ru; 347928, г. Таганрог, ул. Чехова, 2; тел.: +7Вб34371905; кафедра безопасности информационных технологий; инженер.

Pakulova Ekaterina Anatol'evna - Southern Federal University; e-mail: epakulova@sfedu.ru;

2, Chekhova street, Taganrog, 34792В, Russia; phone: +7Вб34371905; the department of security

in data processing technologies; engineer.

УДК 004.056.5 004.89

А.А. Бешта, А.М. Цыбулин

АЛГОРИТМ ОБНАРУЖЕНИЯ ВНУТРЕННЕГО НАРУШИТЕЛЯ НА ОСНОВЕ МЕХАНИЗМА ОЦЕНКИ ДОВЕРИЯ*

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

Внутренний нарушитель; оценка доверия; агент; событие информационной системы.

*

Работа выполнена при поддержке гранта РФФИ и Правительства Волгоградской области (№ 13-07-97040).