Научная статья на тему 'Анализ вероятности непрерывного воспроизведения потокового видео в P2P-сети с помощью имитационного моделирования'

Анализ вероятности непрерывного воспроизведения потокового видео в P2P-сети с помощью имитационного моделирования Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
260
40
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
P2P / ОДНОРАНГОВАЯ СЕТЬ / ЦЕПЬ МАРКОВА / ВЕРОЯТНОСТЬ НЕПРЕРЫВНОГО ВОСПРОИЗВЕДЕНИЯ / ЗАДЕРЖКИ ПЕРЕДАЧИ ДАННЫХ / СТРАТЕГИЯ ЗАГРУЗКИ ДАННЫХ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Васильев Иван Юрьевич, Гайдамака Юлия Васильевна, Самуйлов Андрей Константинович

В статье исследуется механизм передачи данных в потоковой одноранговой сети (Р2Р peer-to-peer). Для построенной в виде дискретной цепи Маркова математической модели буферизации данных разработана имитационная модель, учитывающая размер буфера оборудования пользователей, вероятности подключения и отключения пользователей Р2Р-сети, задержки распространения данных, скорости загрузки и отдачи данных и применяемую в сети стратегию загрузки данных. С помощью имитационного моделирования рассчитан основной показатель качества восприятия пользователем услуги потокового вещания в Р2Р-сети вероятность непрерывного воспроизведения. Для иллюстрации приведен пример расчета для каждой позиции буфера вероятности наличия порции данных на позиции и вероятности загрузки порции данных на позицию в зависимости от скорости отдачи видеоданных.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Васильев Иван Юрьевич, Гайдамака Юлия Васильевна, Самуйлов Андрей Константинович

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Анализ вероятности непрерывного воспроизведения потокового видео в P2P-сети с помощью имитационного моделирования»

Васильев И.1, Гайдамака Ю.В.2, Самуйлов А.К.3

1 Российский университет дружбы народов, г. Москва, магистр кафедры прикладной информатики и теории вероятностей, iuvasiliev@ gmail . com 2 Российский университет дружбы народов, г. Москва, к.ф-м.н., доцент кафедры прикладной информатики и теории вероятностей, ygaidamaka @mail . ru 3 Российский университет дружбы народов, г. Москва, аспирант кафедры прикладной информатики и теории вероятностей, [email protected]

Анализ вероятности непрерывного воспроизведения потокового видео в P2P-сети с помощью имитационного

моделирования9

КЛЮЧЕВЫЕ СЛОВА

P2P, одноранговая сеть, цепь Маркова, вероятность непрерывного воспроизведения, задержки передачи данных, стратегия загрузки данных.

АННОТАЦИЯ

В статье исследуется механизм передачи данных в потоковой одноранговой сети (Р2Р - peer-to-peer). Для построенной в виде дискретной цепи Маркова математической модели буферизации данных разработана имитационная модель, учитывающая размер буфера оборудования пользователей, вероятности подключения и отключения пользователей Р2Р-сети, задержки распространения данных, скорости загрузки и отдачи данных и применяемую в сети стратегию загрузки данных. С помощью имитационного моделирования рассчитан основной показатель качества восприятия пользователем услуги потокового вещания в Р2Р-сети — вероятность непрерывного воспроизведения. Для иллюстрации приведен пример расчета для каждой позиции буфера вероятности наличия порции данных на позиции и вероятности загрузки порции данных на позицию в зависимости от скорости отдачи видеоданных.

Пользователем P2P-сети становится любой пользователь Интернета, оборудование которого поддерживает программное обеспечение торрент-клиента для поиска и загрузки файлов или потокового видео. Оборудования таких пользователей образует наложенную (поверх Интернета) сеть, в которой каждый пользователь взаимодействует с множеством других пользователей (соседей) и загружает от них необходимую ему информацию. Одновременно пользователь отдает свои

9 Исследование выполнено при частичной финансовой поддержке РФФИ в рамках научного проекта № 14-07-00090.

данные другим пользователям, соседом которых он является. Р2Р-сети являются децентрализованными, поскольку в одноранговой сети нет единого сервера - хранилища информации. В сети может присутствовать сервер-источник информации, однако пользователи получают информацию не только от него, но и от своих соседей. Информация (файлы, мультимедийные данные) распределена между пользователями сети: каждый пользователь имеет часть общей базы данных, причем копии имеются одновременно у нескольких пользователей сети. В потоковых P2P-сетях пользователи загружают и воспроизводят поток мультимедийных данных, например, данные вещательного телевидения. Задержки передачи данных являются важным показателем для потоковых сетей, поскольку порция данных после окончания воспроизведения не будет участвовать в дальнейшем обмене. Пауза и/или пропуск одной или нескольких порций данных при воспроизведении потока снижает качество восприятия услуги пользователем, что проявляется в результате «замораживании» изображения на экране, десинхронизации звука и изображения и других отрицательных эффектах. Применение механизма буферизации данных позволяет улучшить качество воспроизведения и повысить вероятность того, что пользователь успеет найти в сети недостающие порции данных.

Модель, построенная в данной статье, позволяет исследовать один из основных показателей качества восприятия (QoE, Quality of Experience)— вероятность непрерывного просмотра (playback continuity), которая соответствует вероятности того, что пользователь успел загрузить ближайшую к воспроизведению порцию данных до момента ее использования. В статье сформулированы принципы построения модели, которая учитывает размер буфера оборудования пользователей, вероятности подключения и отключения пользователей к Р2Р-сети, задержки распространения данных, скорости загрузки и отдачи данных и применяемую в сети стратегию загрузки данных. Проведен численный анализ вероятности непрерывного просмотра видеопотока пользователем.

Для построения модели буферизации данных определим понятие буфера (далее - буфер пользователя) как области памяти терминала пользователя, предназначенной для кэширования недавно загруженных порций данных. На рис. 1 показаны схемы буферов пользователей, где цифрами обозначены номера мест в буфере. В приведенном примере у /пользователя имеются все порции данных, а у /-пользователя не загружены порции «С», «F» и «G», поэтому буферные карты этих пользователей имеют вид «111111111» и «110011011» соответственно.

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

подключения и отключения пользователя от сети соответственно.

/-пользователь

I н G Р Е й С в А

0 1 2 3 4 5 6 7 8

-пользователь

I н Е й в А

0 1 2 3 4 5 6 7 8

Воспроизведение

Воспроизведение -►

Рис. 1. Пример схем буферов пользователей Р2Р-сети На качество воспроизведения влияют также задержки передачи информации от сервера-источника данных - так называемые «лаги» (см. пример на рис. 2). Лаг определяет сдвиг по времени между пользователями, воспроизводящими один и тот же поток видео.

^ (/)

^пользователь

/-пользователь

Рис. 2. Сдвиги по времени (лаги) между пользователями Р2Р-сети Значения лагов могут достигать нескольких секунд. Например, при трансляции футбольного матча, когда /-пользователь, показанный на рис. 3, видит на экране, как вратарь вынимает мяч из ворот (порция данных «И»), / -пользователь видит момент гола (порция данных «С»), а п-пользователь в это же время видит ещё только передачу, приведшую к голу (порция «А»). Лаги оказывают влияние на показатели качества функционирования сети, поскольку они уменьшают «пересечения» зон в буферах, в которых содержатся доступные для обмена порции данных.

/-пользователь

7-пользователь

«-пользователь

F •

Воспроизведение

G

С Воспроизведение

С Р Е й С в А

Воспроизведение -►

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

н

р

Е

D

на рис. 4.

п-пользователь

Входящий трафик Буфер Исходящий трафик

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

Исходящий Входящий

к*

И -пользователь и(И) = 2

с1(п) = 5

п -пользователь

Рис. 5. Ограничения на скорости загрузки и отдачи данных

Входящий трафик

d (п)=1

п -пользователь

Исходящий трафик

h-пользователь и|И)=2

г -пользователь

J -пол

зователь

d (7 )=1 Рис. 6. Пример коллизии Ещё один пример неуспешной попытки загрузки порций данных -случай, когда пользователь (/г-пользователь на рис. 6) был выбран в качестве целевого несколькими другими пользователями сети (п-, 1-, /-

пользователи). В этом случае может возникнуть коллизия - ситуация, когда скорости u(h) целевого пользователя не хватает для отдачи всех данных, запрошенных выбравшими его соседями.

В случае, когда согласно буферной карте у целевого пользователя имеется несколько порций данных из числа недостающих, но загрузка их всех невозможна из-за ограничения на скорость отдачи целевого пользователя, необходимо определить, какие именно из доступных порций данных будут выбраны для загрузки от целевого пользователя. Это определяется с помощью стратегии выбора порции данных для загрузки, т.е. определение номера места в буфера для загрузки очередной порции данных [7, 10, 11]. Наиболее известными стратегиями выбора порций данных в потоковых Р2Р-сетях являются стратегии Rarest First (RF) и Greedy (Gr). В соответствии со стратегией RF пользователь пытается загрузить реже всего встречающиеся в сети порции данных, а при стратегии Gr выбираются наиболее близкие к моменту воспроизведения порции данных. В Р2Р-сетях применяется также многоуровневое кодирование данных, что позволяет загружать потоковое видео с разными уровнями качества. Пользователю не всегда целесообразно загружать данные для просмотра в высоком качестве, если технические возможности его соседей - скорость загрузки или характеристики видеоплеера - позволяют просматривать видео лишь в более низком качестве. Стратегия загрузки определяет порции загружаемые данных с учетом уровня качества воспроизведения пользователя. Выбор стратегии существенно влияет на вероятностно-временные характеристики системы. Так, при использовании стратегии RF повышается вероятность непрерывного просмотра, стратегия Gr снижает задержку начала воспроизведения видеопотока. Применение стратегии, учитывающей требования пользователей к уровням качества просмотра видео, позволяет оптимизировать функционирование сети по нескольким критериям.

Учитывая перечисленные выше параметры Р2Р-сети, предлагается проводить анализ показателей ее функционирования с помощью следующей модели сети:

Z = (N,M, а, р, lag, d, и, ¡5), где /V - число пользователей в сети; М - размер буфера каждого из пользователей; а — (ег(1),... ,ff(JV)) - вероятности подключения пользователей; = (/7(1),...,/?(JV)) - вектор вероятностей отключения пользователей от сети; lag = (lag{T),...,lag(Ny) - вектор задержек передачи информации; d = (d(l), ...rd(N~)~) и и = (u(l)' ...ru(N)) - скорости загрузки и отдачи соответственно; 5 - стратегия загрузки данных. Заметим, что ранее в работах [3-11] исследовались различные частные случаи модели (1).

Не ограничивая общности дальнейшего изложения, рассмотрим сеть с одним сервером-источником и /V пользователями, где буфер любого пользователя имеет (М + 1) место для хранения порций данных. Места с

номера т = 1 до номера т = М предназначены для загрузки данных от других пользователей, а место т = 0 предназначено для загрузки данных от сервера. Пусть - момент начала воспроизведения 1-й порции данных. Будем считать, что длина такта, принятого за единицу времени, соответствует длительности воспроизведения одной порции данных.

В момент £[ для каждого пользователя, не подключенного к сети, с вероятностью а, одинаковой для всех пользователей сети, разыгрывается возможность его появления в сети, а для каждого пользователя, находящегося в сети, с вероятностью Д, также одинаковой для всех пользователей сети, разыгрывается возможность его ухода из сети. Далее для всех пользователей происходит сдвиг буфера, когда порция данных, находившаяся на М -месте, отправляется на воспроизведение, все остальные порции сдвигаются на одну позицию ближе к концу буфера, а 0-место становится свободным. В момент + 0 сервер случайным образом выбирает пользователя и загружает ему порцию данных на 0-место буфера. Пользователи, которых сервер не выбрал для загрузки, выполняет следующие действия. Если в его буфере есть пустые места, то он случайным образом выбирает целевого пользователя и пытается загрузить от него недостающие порции данных. Если у целевого пользователя найдётся хотя бы одна порция данных из тех, что отсутствуют, то попытка загрузки будет успешной. Если таких порций несколько, то номер места для загрузки определяется в соответствии со стратегией загрузки. Пользователь не сможет ничего загрузить в одном из трех случаев. Если в начале такта все места с 1-го по М-ое заполнены, если у целевого пользователя нет ни одной порции данных из отсутствующих, и, наконец, если у целевого пользователя не хватает скорости отдачи. В момент — О

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

Для рассматриваемой сети состояние п-пользователя представлено парой г(п) = (_а(п), х(п)~), где а(тг) - индикатор присутствия пользователя в сети и - состояние его буфера. Напомним, что порция данных, которая будет отправлена на воспроизведение на ближайшем такте, находится на М -месте и, если на каждом такте М-место буфера пользователя заполнено, то пользователь будет просматривать видео без пауз в воспроизведении.

Искомой характеристикой рассматриваемой системы является вероятность непрерывного просмотра, а именно вероятность того, что п-пользователь смотрит видео без перерывов в воспроизведении. В построенной модели это вероятность того, что п пользователь в конце такта на М-месте буфера имеет порцию данных.

Численный анализ проведен для случая N = 300, М = 40, число соседей для каждого пользователя выбрано равным 60, скорости загрузки пользователей й(п) = М, в сети применяется стратегия ЯК Все множество пользователей разбито на три равных по мощности непересекающихся

подмножества с лагами (задержками воспроизведения) 0, 10 и 20 тактов так, что задержка для всех пользователей внутри одной группы одинакова. Задача анализа вероятности непрерывного воспроизведения для групп пользователей с различными задержками передачи данных от сервера была решена средствами имитационного моделирования. Для краткости изложения алгоритм имитационной модели в статье не приводится.

На рис. 7 приведен график вероятности наличия порции данных в га-позиции буфера, а на рис. 8 - график вероятности загрузки порции данных в соответствующие позиции буфера в зависимости от скорости отдачи видеоданных и(п) = {1,2,3,4,5}.

Рис. 7. Вероятность наличия порции данных в буфере

Невысокая вероятность найти порцию данных в позициях буфера с небольшими порядковыми номерами объясняется тем, что соответствующие порции данных реже встречаются в сети по сравнению с порциями данных в позициях буфера, близких к воспроизведению. Ещё один наблюдаемый на графиках рис. 7 эффект состоит в том, что начиная с позиции т = 10, чем выше скорость отдачи видеоданных и(п), тем выше вероятность найти порцию данных в позициях буфера с одним и тем же порядковым номером. Это подтверждает факт, что при высоких скоростях отдачи видеоданных и(п) буфер заполняется быстрее.

График на рис. 8 соответствует описанным выше закономерностям. Заметим, что загрузка порции данных в позицию буфера произойдёт при наступлении двух событий: у загружающего пользователя нет порции в соответствующей позиции, у целевого пользователя есть порция в соответствующей позиции. Поскольку вероятность наличия порции данных на позициях буфера с небольшими порядковыми номерами невысока, то согласно рассмотренной стратегии RF пользователи будут пытаться в первую очередь заполнить именно эти позиции буфера.

Рис. 8. Вероятность загрузки порции данных в буфер Волны на графике при т = 12 и ш = 22 связаны с лагами, различными для трех групп пользователей. Так, пользователи первой группы с лагом 0 могут загружать порции данных только от своих соседей по группе. Пользователи второй группы с лагом 10 - уже не только от своих соседей по второй группе, но и от пользователей первой группы. Судя по графику порции т = 10 иш = 11 ещё недостаточно распространены в сети, чтобы попытки загрузить их оказались успешными, а порция ш = 12 -самая популярная для обмена порция для пользователей первой и второй групп. Аналогичные рассуждения справедливы для порций т = 20, m = 21 и ш = 22. Общее падение вероятности загрузки порции данных с ростом порядкового номера позиции в буфере объясняется тем, что близкие к воспроизведению порции данных с высокой вероятностью уже имеются в буфере пользователей, поэтому не производится даже попыток загрузить порцию данных в позиции, близкие к воспроизведению. Заметим, что скорости отдачи видеоданных и(п) на вероятность загрузки порции данных практически не влияют.

Задачами дальнейших исследований являются анализ влияния коллизий при загрузке данных на показатели качества функционирования Р2Р-сети, а также разработка модели сети с учетом часовых поясов и длительности пребывания пользователей в сети [12,13].

Литература

1. IETF RFC 6972: Problem Statement and Requirements of the Peer-to-Peer Streaming Protocol (PPSP). https://datatracker.ietf.org/doc/rfc6972/

2. IETF Survey of P2P Streaming Applications. https://datatracker.ietf.org/doc/draft-ietf-ppsp-survey/

3. Yuliya Gaidamaka, Ivan Vasiliev, Andrey Samuylov, Konstantin Samouylov, and Sergey Shorgin. Simulation of Buffering Mechanism for Peer-to-Peer Live Streaming Network with Collisions and Playback Lags // Proc. of the 13th Int. Conf. on Networks (ICN 2014), February 23—27, 2014. Nice, France. Pp. 86-91.

4. Yuliya Gaidamaka and Andrey Samuylov. Analytical Modeling of Playback Continuity in P2P Streaming Network with Latest First Download Strategy // Lecture Notes in Computer Science. -Germany, Heidelberg, Springer-Verlag. - 2013. - Vol. 8121. Pp. 363-370.

5. Yu. Gaidamaka On mathematical modeling of P2P streaming networks // Distributed Computer and Communication Networks: Control, Computation, Communications (DCCN-2013), Moscow: JSC "TECHNOSPHERA", 2013. - Pp. 188-190.

6. Yuliya Gaidamaka, Andrey Samuylov, and Konstantin Samouylov. Mathematical Modeling and Performance Analysis of P2P Streaming Networks // Int. Conf. INTHITEN (INternet of THings and ITs ENablers), 3-4 June 2013. St Petersburg, Russia. Pp. 69-81.

7. Гайдамака Ю.В., Самуйлов А.К. Анализ стратегий заполнения буфера оборудования пользователя при предоставлении услуги потокового видео в одноранговой сети // T-Comm—Телекоммуникации и Транспорт. 2013.—№11. - C.30-32.

8. А. Адаму, Ю.В. Гайдамака Анализ вероятности непрерывного воспроизведения видеопотока в P2P^to // «Вестник РУДН. Серия «Математика. Информатика. Физика».» -М.: Изд-во РУДН. - 2011. - №4. С. 38-46.

9. Амину Адаму, Ю.В. Гайдамака Аппроксимация нормальным законом вероятностных характеристик модели сети P2P TV // «Вестник РУДН. Серия «Математика. Информатика. Физика».» - М.: Изд-во РУДН. - 2011. - №3. С. 63-68.

10. Aminu Adamu, Yuliya Gaidamaka, and Andrey Samuylov. Discrete Markov Chain Model for Analyzing Probability Measures of P2P Streaming // Lecture Notes in Computer Science. -Germany, Heidelberg: Springer. - 2011. - Vol. 6869. Pp. 428-439.

11. Адаму А., Гайдамака Ю.В., Самуйлов А.К. Построение и анализ модели воспроизведения каналов вещательного телевидения в Р2Р сети // «Вестник РУДН. Серия «Математика. Информатика. Физика».» - М.: Изд-во РУДН. - 2010. - №3(1). - С. 47-53.

12. How many Internet users are there in your time zone? (infographic) [Электронный ресурс] / Режим доступа: http://royal.pingdom.com/2013/02/12/internet-users-time-zone/, свободный (дата обращения 01.10.2014).

13. Study shows that in-app advertising is more effective than television or internet ads [Электронный ресурс] / Режим доступа: http://www.phonearena.com/news/Study-shows-that-in-app-advertising-is-more-effective-than-television-or-internet-ads_id22556/, свободный (дата обращения 01.10.2014).

i Надоели баннеры? Вы всегда можете отключить рекламу.