автореферат диссертации по информатике, вычислительной технике и управлению, 05.13.15, диссертация на тему:Сетевые механизмы обеспечения согласованности данных в распределенных системах виртуальной реальности

кандидата технических наук
Харитонов, Василий Юрьевич
город
Москва
год
2010
специальность ВАК РФ
05.13.15
цена
450 рублей
Диссертация по информатике, вычислительной технике и управлению на тему «Сетевые механизмы обеспечения согласованности данных в распределенных системах виртуальной реальности»

Автореферат диссертации по теме "Сетевые механизмы обеспечения согласованности данных в распределенных системах виртуальной реальности"

На правах рукописи

004606233 Харитонов Василий Юрьевич

СЕТЕВЫЕ МЕХАНИЗМЫ ОБЕСПЕЧЕНИЯ СОГЛАСОВАННОСТИ ДАННЫХ В РАСПРЕДЕЛЕННЫХ СИСТЕМАХ ВИРТУАЛЬНОЙ РЕАЛЬНОСТИ

Специальность 05.13.15 — Вычислительные машины, комплексы и компьютерные сети

АВТОРЕФЕРАТ диссертации на соискание ученой степени кандидата технических наук

2 4 ИЮН 2010

Москва-2010

004606233

Работа выполнена на кафедре Вычислительных машин, систем и сетей Московского энергетического института (технического университета).

Научный руководитель: доктор технических наук, профессор

Дзегеленок Игорь Игоревич

Официальные оппоненты: доктор технических наук, с.н.с.

Рудельсон Лев Ефимович

кандидат технических наук, с.н.с. Бурцев Александр Борисович

Ведущая организация: ЗАО «Р.Е.Т. Кронштадт»

Защита состоится 25 июня 2010 г. в 16 час. 00 мин. на заседании диссертационного совета Д 212.157.16 при Московском энергетическом институте (техническом университете) по адресу. 111250, г. Москва, ул. Красноказарменная, д. 13 (ауд. М-510).

С диссертацией можно ознакомиться в библиотеке Московского энергетического института (технического университета).

Отзывы в двух экземплярах, заверенные печатью организации, просьба направлять по адресу: 111250, г. Москва, Красноказарменная ул., д. 14, Ученый совет МЭИ (ТУ).

Автореферат разослан «X/ » мая 2010 г.

Ученый секретарь

диссертационного совета Д 212.157.16

кандидат технических наук, доцент

Чернов С.А.

ОБЩАЯ ХАРАКТЕРИСТИКА РАБОТЫ

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

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

Вместе с повышением реалистичности увеличивается и масштаб создаваемых систем. С ростом пропускной способности вычислительных сетей растет интерес к распределенным системам виртуальной реальности (РСВР). РСВР представляют собой один из наиболее динамично развивающихся классов распределенных систем. Повышенный интерес к таким системам, в первую очередь, связан с качественно новыми возможностями, которые они обеспечивают для человека. Прежде всего, пользователю предоставляется возможность «погружения» в некоторую виртуальную среду, достаточно точно имитирующую реальный мир. Пользователь может взаимодействовать с объектами виртуальной среды, как визуально, так и с помощью различных устройств ввода-вывода. Однако главным свойством РСВР является возможность взаимодействия множества пользователей в общей для них виртуальной среде. РСВР позволяет пользователям работать совместно, невзирая на то, как далеко они друг от друга находятся, что может быть востребовано во многих прикладных областях.

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

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

- аппаратные ограничения, возникающие в сетях передачи данных, не

позволяют пользователям РСВР получать согласованные виды виртуальной реальности, в результате чего сложно гарантировать непротиворечивость и одновременность протекающих в ней процессов для всех пользователей;

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

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

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

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

Предмет исследования: сетевые механизмы обеспечения согласованности данных в распределенных системах виртуальной реальности.

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

Для достижения поставленной цели должны быть решены следующие задачи:

- анализ существующих РСВР, выявление основных их типов и архитектурных особенностей;

- формализация распределенных вычислений в РСВР, разработка подходов к определению понятия согласованности в РСВР и её оценке, выделение факторов, влияющих на согласованность;

- анализ базовых технологических принципов построения и разработка общей архитектуры РСВР;

- разработка высокоуровневого протокола взаимодействия процессов и других механизмов обеспечения согласованности данных в РСВР;

- разработка экспериментальной версии программного обеспечении промежуточного уровня, позволяющего создавать РСВР под конкретные области применения, на её основе — программной реализации опытной версии РСВР;

- проведение экспериментальных исследований по оценке эффективности разработанных механизмов на основе разработанной реализации РСВР;

- определение области применения разработанных средств и внедрение полученных результатов.

Методы исследования. Системный анализ, теория множеств, элементы теории графов, теория распределенных систем, теория объектно-ориентированного программирования и натурный эксперимент.

Научная новизна работы. Новыми являются следующие полученные в диссертации результаты:

1) формализован процесс распределенных вычислений в РСВР с использованием событийного подхода, что позволило подойти к формальному определению понятия согласованности в таких системах;

2) предложены два возможных подхода к определению понятия согласованности: модели наблюдательной и видовой согласованности, последний подход позволяет оценить согласованность численно, на основе введенных оценок;

3) обоснованы и разработаны сетевые механизмы обеспечения согласованности данных в РСВР, в их числе:

- высокоуровневый протокол межпроцессного взаимодействия DVRP со встроенными механизмами управления репликацией данных на основе принципа «избирательной согласованности»;

- адаптивный метод репликации и предсказания состояний объектов, учитывающий динамику их движения;

- механизм управления совместным доступом многих пользователей к состоянию виртуальной среды;

- метод синхронизации часов процессов РСВР;

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

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

1) экспериментально подтверждена возможность создания РСВР и определены вероятные области её применения, в их числе: образование и наука, тренажерные комплексы и другие области, требующие удаленного взаимодействия многих участников (пример—территориально-распределенные ситуационные центры);

2) на базе предложенных механизмов обеспечения согласованности разработана экспериментальная программная библиотека TerraNet, представляющая собой ПО промежуточного уровня (middleware), которая позволяет создавать РСВР для конкретных областей применения, с возможностью их гибкой настройки. В частности, на её основе на кафедре ВМСиС МЭИ (ТУ) была разработана программная среда для модельного воспроизведения группового пилотажа летательных аппаратов над местностью;

3) предложенные в работе сетевые механизмы нашли применение в опытных версиях комплексных авиационных тренажеров, разрабатываемых ЗАО «Транзас» и ОАО «ОКБ Сухого»;

4) полученные в диссертационном исследовании результаты были использованы на кафедре ВМСиС МЭИ (ТУ) при выполнении госбюджетной НИР (гос. per. № 01200605949), а также при подготовке курса лекций и лабораторных работ по дисциплине «Компьютерные технологии в науке и образовании»;

5) исследования, проводимые по теме диссертации, поддержаны программой Рособразования «Развитие научного потенциала высшей школы» (проект 2.1.2/6718), федеральной целевой программой «Научные и научно-педагогические кадры инновационной России» (Государственный контракт

П2227), а также грантом НШ-7239.2010.9 Президента Российской Федерации для государственной поддержки ведущих научных школ Российской Федерации.

Апробация работы. Основные результаты работы докладывались и обсуждались на следующих научно-технических конференциях:

- Третья Европейская научно-технической конференция по аэрокосмическим наукам EUCASS-2009 (грант РФФИ 09-07-09229-моб_з). Место проведения: Версаль, Франция. Организаторы: EUCASS и ASTech Paris Region при поддержке Французского национального центра научных исследований (CNRS), 6-9 июля 2009 г.

- Третья Всероссийская научно-техническая конференция «Методы и средства обработки информации». Место проведения: Москва. Организатор: МГУ им. М. В. Ломоносова. 6-8 октября 2009 г.

- Международная конференция по проблемам надежности вычислительных систем DepCoS-RELCOMEX. Место проведения: Польша. Организатор: Вооштавский Технологический университет п^и поддержке Института инженеров по электротехнике и электронике (IEEE). 2007,2008,2009 гг.

- Международная конференция «Параллельные вычисления и проблемы управления» РАСО. Место проведения: Москва, Организатор: Институт проблем управления им. В.А. Трапезникова РАН. 2006, 2008 гг.

- Международная научно-техническая конференция «Информационные средства и технологии». Место проведения: Москва. Организатор: МЭИ (ТУ) и МГТУ «СТАНКИН». 2005, 2006,2007 гг.

- Международная научно-техническая конференция студентов и аспирантов «Радиоэлектроника, электротехника и энергетика». Место проведения: Москва. Организатор: МЭИ (ТУ). 2006,2007, 2008 гг.

Публикации. Основные результаты, полученные при выполнении диссертационной работы, опубликованы в 13 печатных работах (4 из них — на английском языке), включая 1 работу в издании, рекомендуемом ВАК.

Структура диссертации. Основная часть диссертации состоит из введения, пяти глав и заключения и содержит 157 страниц машинописного текста, 51 рисунок и 3 таблицы. Список литературы включает 71 наименование. Дополнительная часть содержит 4 приложения. Общий объем диссертации — 187 страниц машинописного текста (51 рисунок, 8 таблиц).

СОДЕРЖАНИЕ РАБОТЫ

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

В первой главе уточняются представления о РСВР, формулируются основные предъявляемые к ним требования, приводится обзор и сравнительный анализ существующих решений и производится постановка задачи диссертационного исследования.

В упрощенном виде РСВР можно представить как множество компьюте-

ров (узлов), объединенных сетью, которые вместе образуют единую информационную среду (см. рисунок 1). Каждый пользователь может быть представлен в виртуальной среде некоторым объектом, состояние которого (положение в пространстве, скорость и т. д.) контролируется интерактивным программным приложением с трехмерным интерфейсом (именуемым далее процессом), выполняемым на соответствующем узле. Процесс производит визуализацию трехмерного вида виртуальной среды для отдельного пользователя и информирует о совершенных им действиях процессы других пользователей, посылая им сообщения обновления, а также получает сообщения обновления от других процессов системы. В результате взаимодействия процессов РСВР у всех пользователей появляется ощущение присутствия в общем для них виртуальном мире.

Вид тяьэопатаяя I

Рабочая станция пользователя (узел) // j

ПриичмЛит «layuiwatfUKi яидо для отдельного пользователя и обеспечивает упрощение его объектом

Рабочая станция льзователя (узел)

Каждый пользователь управляет споим объектам

Объекты виртуальной среды

Часы всех шателеи Ф быть синхрона трованы

Рисунок 1 - Обобщенное представление РСВР

Основными требованиями к РСВР, определяющими качественный характер взаимодействия пользователей (в том числе визуального), являются требования согласованности (consistency) и чувствительности (responsiveness). Требование согласованности говорит о том, что все пользователи РСВР должны иметь идентичные данные о состоянии виртуальной среды в каждый момент времени, а информация об изменениях этого состояния должна распространяться между ними максимально быстро. Именно согласованность позволяет добиться эффекта одновременного присутствия многих пользователей в общей виртуальной среде. Требование чувствительности системы характеризуется временем, необходимым для того, чтобы действие, осуществленное пользователем, произвело результат в виртуальной среде. Говоря кратко, чувствительность есть время отклика системы на действие пользователя.

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

шающее максимально допустимое время отклика. Поэтому в РСВР необходимо искать компромисс между согласованностью и чувствительностью.

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

При сравнении РСВР с классическими распределенными системами, наряду с общими свойствами, такими как асинхронность вычислений, отсутствие общей для всех процессов памяти, географическая удаленность и неоднородность вычислительных узлов, можно выделить характерные особенности РСВР:

- вычисления производятся в реальном времени — это предъявляет особые требования к вычислительным узлам, которые должны успевать обрабатывать большие объемы информации за малое время, и к каналам связи, которые должны обеспечивать своевременный доступ к наиболее актуальному состоянию НИПТУЯЛЬНПЙ г.пягш-

! ^ Г п- 3

- вычисления носят специфический и итеративный характер — большая их часть сводится к непрерывному расчету глобального состояния виртуальной среды, которое постоянно меняется, причем не только в ответ на действия пользователей, но и с течением времени;

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

В ходе рассмотрения существующих решений в области создания РСВР выявлены три основных их типа, определяемых соответствующими областями применения: тренажерные РСВР, сетевые виртуальные среды и многопользовательские сетевые компьютерные игры. Для каждого типа систем рассмотрены примеры наиболее известных и успешных разработок, среди них — такие как HLA, DIS, NPSNET, DIVE, Half-Life 2: Source, проведен их сравнительный анализ. Из анализа рассмотренных РСВР видно, что:

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

- ни одна система не предоставляет реализации высокоуровневого сетевого протокола для работы с виртуальной средой;

- большинство систем не имеют встроенных механизмов управления репликацией данных;

- почти все системы ориентированы под конкретные области применения и задачи: отсутствует общий подход и инструментарий для построения РСВР.

Основной вывод: в настоящее время многие вопросы построения РСВР все еще остаются открытыми и требуют дальнейших исследований. И главным из них является вопрос обеспечения согласованности данных в РСВР при одновременном поддержании заданной чувствительности системы.

Во второй главе рассматривается главная задача, решаемая при построении РСВР — задача обеспечения согласованности реплик данных на процессах системы, производится формализация распределенных вычислений на основе

событийной модели обмена сообщениями с учетом специфики РСВР, предлагаются различные подходы к определению понятия согласованности, выявляются основные влияющие на неё факторы и ограничения, производится анализ подходов к их преодолению.

Начало главы посвящено формализации процесса распределенных вычислений в РСВР. Предлагаемая модель является расширением событийной модели распределенных вычислений, применяемой для описания вычислений в классических распределенных системах.

В соответствии с моделью, РСВР рассматривается как множество самостоятельных процессов Р- {р]гр2,...,рп}, взаимодействующих между собой по сети (множество Р также принято называть распределенной программой) на основе обмена сообщениями. Через mtj обозначим сообщение, посылаемое процессом р( процессуpj, mt} sM, где М— множество всех сообщений, переданных в

системе за время её работы. Выполнение каждого процесса распределенной программы можно представить в виде последовательности действий, моделируемых как три типа событий-, внутренние события, события отправки данных (send) и события приема данных (recv). Обозначим через е/ 1-ое событие в z-ом процессе. Примерами событий в РСВР являются различные действия пользователей, такие как создание объектов виртуальной среды, изменение их состояний и т.п.

Определение 1. Локальная история hi процесса pi во время вычислений есть последовательность событий й,- = е/ е,2 ef... .

Определение 2. Глобальная история вычисления представляет собой множество Н= h\ и... и hn, включающее произошедшие во всех п процессах события.

В асинхронных распределенных системах, где отсутствуют глобальные часы, события могут быть упорядочены только на основе их причинно-следственных связей. Определим над множеством Н бинарное отношение причинности «—>», такое, что:

(г' = _/) л (£</), или Vef, \fe'j е Н,е\ —г еУ о ■ е\ = sendl (т) л <?' = recvj (т), или (1)

Г] „и ZJ . . т . т v J

3ek еН:е( ->ek лек -»<г;

Формально распределенное вычисление можно представить как частично упорядоченное множество, заданное парой (.Н, —»). На рисунке 2 приведен пример временной диаграммы распределенных вычислений в РСВР для трех процессов.

*-/

Рисунок 2 - Пространственно-временная диаграмма распределенных вычислений. рирг,рг —процессы распределенной системы, е' — 1-ое событие на г-ом процессе.

Определение 3. Глобальное состояние РСВР есть множество локальных состояний всех её процессов: S = {5,,iS2,...,5n}. При этом под локальным состоянием Si процесса р, будем понимать значения внутренних переменных процесса, а также последовательности сообщений, находящихся в каналах связи, связанных с процессом.

Определение 4. Виртуальная среда VE есть совокупность виртуальных объектов: VE= {01,02,...,0И}, где О, — объект виртуальной среды.

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

Так как в РСВР распределенные вычисления ориентированы на моделирование и отображение некоторой виртуальной среды VE, то глобальное состояние РСВР должно отражать и хранить её состояние.

Определение 5. Глобальное состояние виртуальной среды Sve есть совокупность состояний виртуальных объектов с заданными наборами атрибутов:

Sor№,a°2\...,a°;\j = {l,...,m}, (3)

где S0],S0i,...,S0m—состояния объектов 0{,02,...,0т, соответственно; al J,а2',...,ап' — атрибуты, п} — число атрибутов состояния объекта Oj.

Рассмотрим теперь, как осуществляется хранение состояния виртуальной среды на процессах РСВР. Для этого введем понятие реплики состояния объекта.

Определение 6. Реплика R'0, состояния объекта О/, есть копия его состояния S0 , хранимая на процессе р„ причем R'0k с S:.

Будем говорить, что процесс реплицирует объект, если реплика данного объекта существует в локальной памяти процесса. Реплика называется активной, если процесс, на котором она хранится, транслирует изменения в состоянии соответствующего объекта другим процессам. В противном случае, реплика называется пассивной.

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

Модель наблюдательной согласованности основана на понятии наблюдения.

Определение 7. Наблюдением W, за распределенным вычислением назовем упорядоченную последовательность событий, которая поступает в ходе работы распределенной системы на вход некоторого процесса-монитора рт — особого типа процесса, способного записывать историю вычислений.

Для обеспечения наблюдательной согласованности необходимо, чтобы последовательности событий, соответствующие наблюдениям W\, ... Wn производимым на сторонах процессов-мониторов р\, ръ ... рп, были идентичны

друг другу и согласованы с историей вычислений Н.

В работе предлагается критерий выполнения наблюдательной согласованности (см. рисунок 3). Пусть HSmd сЯ — подмножество глобальной истории, включающее все события отправки данных. Пусть е, — событие отправки некоторого сообщения т с процесса р,-, т.е. е, = send(m). Обозначим момент времени отправки сообщения т как t(ei), а время, затраченное на передачу сообщения от, как tL(m) = t(recv(m))-t(send(m)). Тогда, для обеспечения наблюдательной согласованности, необходимо выполнение следующего условия:

Tsend>hmw.> (4)

min

где TSend =min(j/(e,)-i(e/|,Ve].,e(. е HSend,i Ф /) — минимальное время (пе-

min

риод) между последовательными посылками данных в системе, tlmax = таx(tL(m),Vm е М) — максимальная лагентность при передаче сообщений в системе.

s

Наблюдательная согласованность нарушена:

HS й

Наблюдательная согласованность соблюдается: W, = IУг = etfetfetfe:\е'

Рисунок 3 - Примеры нарушения и соблюдения условия наблюдательной согласованности.

51 — серверный процесс, С1и С1г — клиентские процессы

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

Определение 8. Вид виртуальной среды V , наблюдаемый на некотором процессе р,, есть совокупность реплик К состояний объектов виртуальной среды УЕ, хранящихся на этом процессе:

V» = 1К " (5)

Пусть событие е/ на некотором процессе р,- возникает в некоторый момент времени 1к, тогда будем называть 5/4) = $1 локальным состоянием этого процесса в момент времени 4- Глобальное состояние системы в некий произвольный момент времени ( есть множество 5(/) = {5, (?), 5'2 (г),..., (?)}.

Определение 9. РСВР является видово согласованной в момент времени /, если виды на всех её процессах идентичны друг другу в момент времени V.

Ур(г)=Ур1(!) (6)

Видовая согласованность подразумевает введение метрики, позволяющей непосредственно измерить разницу между репликами состояний объектов. Поскольку наиболее значимыми атрибутами объекта в виртуальной среде являются его пространственные характеристики (положение, скорость, ускорение, ориентация), то большая часть метрик ориентирована именно на них. В работе предлагаются две метрики видовой согласованности: средняя ошибка в определении расстояния между двумя объектами £ и средняя ошибка в определении изменения ускорения объекта у. Рассмотрим выражение для первой метрики.

Обозначим расстояние между объектами Oj и Ов в некоторый момент времени t¡ на стороне пользователя UA, как А-У(л)(/,■), а на стороне пользователя

Uв, как Aj(B)(í¿), тогда

^ = (7)

п м

где ¡т^дг,.)- ÁS(5)(r,.jj — ошибка в определении расстояния между объектами О а и Ов в момент времени t¡, п — общее число проведенных измерений для заданных траекторий движения объектов 0А и Ов. Ошибка £ может измеряться как в абсолютных единицах измерения (в метрах), так и в относительных (как это делается в работе) — например, в корпусах объектов, — такие единицы измерения являются инвариантными по отношению к длине самого объекта.

Как известно из теории классических распределенных систем, основным способом поддержания согласованности данных является репликация — механизм синхронизации содержимого нескольких копий объекта (например, содержимого базы данных), под которым понимается копирование данных из одного источника на множество других и наоборот. То, как быстро осуществляется репликация, напрямую влияет на согласованность данных в системе.

Одним из главных препятствий на пути обеспечения высокой согласованности в РСВР являются аппаратные ограничения, налагаемые линиями связи и конечным оборудованием узлов пользователей: латентность и пропускная способность каналов передачи данных, джиттер (колебание латентности), вычислительная мощность узла. Эти ограничения приводят к увеличению времени доставки данных, а также к росту времени их обработки.

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

N N-1 ÍN-1 i Л

'w-SÜ+SX'+r s^r. (8)

1=1 1=1 \!=ln¡ У

где N — число узлов, участвующих в передаче данных, включая узел-источник и узел-получатель данных; V — размер сообщения в байтах; t'P — время обработки сообщения на г'-ом узле (в секундах); Aí'¡+l — время передачи первого бита информации между узлами i и г + 1 (сетевая латентность — в секундах); B¡+i — пропускная способность канала между узлами г и i + 1 (байт/с).

Из выражения (8) следует, что основной способ ослабления влияния сетевых ограничений при невозможности совершенствования аппаратных средств

— сокращение объемов передаваемых данных (уменьшение V) при одновременном совершенствовании архитектуры программного обеспечения на узлах (уменьшение t'P). На этом принципе основано большинство применяемых в настоящее время подходов повышения согласованности, среди них:

1) оптимизация протокола взаимодействия пользователей;

2) предсказание состояний объектов (англ. название dead reckoning)-,

3) фильтрация данных в соответствии с их значимостью (англ. названия: relevance filtering, interest management)',

4) динамическое распределение состояния виртуальной среды между несколькими серверами.

Рассмотренные во второй главе вопросы обеспечения согласованности данных позволяют перейти к непосредственной разработке соответствующих сетевых механизмов и архитектуры РСВР.

Третья глава посвящена разработке архитектуры РСВР, а также созданию и обоснованию сетевых механизмов, обеспечивающих согласованность данных в РСВР.

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

В процессе анализа существующих систем выявлено, что при разработке РСВР необходимо принимать во внимание следующие архитектурные принципы:

- архитектуру взаимодействия процессов — определяет топологию взаимодействия процессов между собой; основные типы: одноранговая, клиент-серверная, мультисерверная\

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

- модель управления данными — определяет способ хранения данных, доступа к ним, и обмена ими между процессами; основные модели: централизованная, реплицируемая, распределенная-, в работе введена гибридная модель управления данными, сочетающая в себе свойства трех основных моделей и позволяющая повысить масштабируемость РСВР;

- формат внутреннего представления состояния виртуальной среды — в качестве такого формата в работе предложена иерархическая структура данных, распределяемая между процессами РСВР —распределенный граф сцены.

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

Основу предлагаемой архитектуры составляет блок обеспечения согласованности, объединяющий различные разработанные механизмы обеспечения

согласованности в РСВР:

Ml. высокоуровневый протокол межпроцессного взаимодействия DVRP (.Distributed Virtual Reality Protocol), позволяющий организовать взаимодействие между процессами РСВР на более высоком логическом уровне (см. рисунок 5), при меньшей загрузке сети за счет поддержки сообщений переменной длины и встроенных механизмов управления репликацией данных на основе принципа «избирательной согласованности»',

М2. адаптивный метод репликации и предсказания состояния объекта, позволяющий за счет учета динамики движения объекта уменьшить нагрузку на сеть при сохранении требуемой точности расчета состояний объектов (см. рисунок 6);

МЗ. механизм управления совместным доступом к состоянию виртуальной среды, позволяющий корректно обрабатывать одновременные обращения нескольких процессов к одному объекту и разрешать связанные с этим ситуации нарушения согласованности;

Л/Г4 DPDD ---.т,,».«

■• 1MH/U н^иц^иии х Vljx , UWHUDOiinran 11U Ш11 \J~

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

I Клиентский процесс N

I Клиентский процесс 2

Серверный процесс

I -О/цш'ютка дтных с I уг/кроцстя еподи

i J. Khint'pDii') доступа к j : t i с осчг-'Штю карт, среды j ;

• (_JL._

у с цены О /я ьщи'шзаиип

Моделирование ¿човальи. состоялиs ¿ирщ. .среды

Этцгрнцые часы. ■

¿fZZZ

jJ I Га^оцльнчс хршшяище -г» ^¿oi'mcs/otf?вирт. среды

Управленце репликацией данных - <

П/юккаынш! и и>вперттия . ' схцптним объемное

Реш/маняцижкишыл с Менеджер В ысокоу/иж печыи

пцчненехиа< фюыпрат - юиентоя ■ -протокол-.

t 4- .. а j.. --f Г'

,;: Интерфейс-межпроцессного взаимодействия.

Клиентский процесс 1

Блок визуатзации

Обработка данных с , . устройств внада

Визуалиюция

Контроль доступа к юстокнию вирт. среды

Моделирование локальн. л оерюяния вирт. среды

Подготовка грифа сцены длнешуализации

. Лпкальные часы . -

Управление ремикщигй ■ '. •» > данных•• 1 ■"• .

■ Локальное хранилище состояния парт, среды

арсосышши интертщах

-.состоят апекток ■

Высокоуровневый протокол

НЕЕ

■ Мферфгисжжпрочессного егсшмодыстеия. :

Рисунок 4 - Предлагаемая программная архитектура РСВР

Разработанные в третьей главе общая архитектура РСВР и механизмы обеспечения согласованности сделали возможным разработку программного обеспечения промежуточного уровня (middleware) для создания РСВР.

В четвертой главе рассматриваются подробности реализации созданного на базе разработанных архитектуры и механизмов программного обеспечения

промежуточного уровня для построения РСВР — библиотеки ТеггаИег, после чего на основе созданного программного инструментария и предложенной методики производится оценка эффективности разработанных средств.

^КаисшТ)

Установление основного ТСР-соединения

Установление ЯРС ТСР-соединения

Установление ЦРР соединения

Запрос уникального Ю процесса

НазначениеЮпроцессу Инициализация нового клиента

в

^ Передача текущего состояния виртуальной среды 7

ГО

Сохранение текущего состояния в лок. ^ хринмище состояния иирт. среды

8) Запрос модельного времени (синхронизация часов)

Передачд_гпекуи[егр_модельного ере,иени_

9) Создание новых объектов виртуальной среды

Регистрация нового клиента

Информирование других клиентов о новом клиенте

Сохранение информации о новом клиенте

10) Запрос на изменение состояния объекта Положительный ответ

Добавление новых объектов в глоо. хранилище состояния вирт. среды

П)

Изменение состояния объекта

Применение изменений к ¿/обильному храни!ищу состояния нирт. среды

Передача изменений состояния 12) виртуальной среды другим клиентам

13) Закрытие/разрыв основного ТСР-соединения

Применение и ¡мнений к локальному хранилищу состояния еирт. среды

Удаление клиента___

Информирование других 14) клиентов об отключении клиента

Удаление информации о

Рисунок 5 - Основные фазы взаимодействия процессов по протоколу ОУЯР

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

предсказание состояния объекта (экстраполяция)

эталонная траектория " (передающая сторона)

предсказанная траектория (принимающая сторона)

посылка данных передающей стороной

порог

максимального отклонения от эталонной траектории

\объект

\ прием нового \ состояния \ объекта на ^принимающей стороне

ПО

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

network

Sockets

terranet~osg \^—*OpenSceneGrapii *—OpenGL

ОС

Рисунок 6 - Иллюстрация работы адаптивного метода репликации и предсказания

состояния объекта

В состав библиотеки (см. рисунок 7) входит несколько модулей, реализованных в виде динамически связываемых библиотек (.Dynamic Link Library, DLL), каждый модуль реализует один или несколько блоков архитектуры, представленной на рисунке 4:

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

- terranet_osg.dll ■— графическая компонента, включающая встроенную оконную систему и систему визуализации на основе графа сцены (реализует блок визуализации и блок обработки данных с устройств ввода);

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

Рисунок 7 - Структура библиотеки TerraNet и взаимосвязь её модулей между собой, приложением пользователя и компонентами операционной системы

На базе библиотеки TerraNet было разработано несколько экспериментальных версий РСВР:

- программный комплекс FFSystem (Formation Flight System), обеспечивающий модельное воспроизведение группового пилотажа нескольких летательных аппаратов над местностью (см. рисунок 8).

- система распределенного моделирования виртуальных трехмерных сцен ShareEdit, позволяющая нескольким пользователям производить совместное геометрическое моделирование произвольных трехмерных сцен в реальном времени.

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

L

1 17

С помощью разработанной методики проведено экспериментальное исследование по оценке качества разработанных сетевых механизмов обеспечения согласованности данных. Экспериментально подтверждено, что с увеличением частоты репликации ошибка в расчете состояний удаленных объектов уменьша-' ется, а согласованность увеличивается. Показано (см. рисунок 9), что при одном и том же потребляемом сетевом трафике учет динамики движения объекта при репликации вместе с применением разработанного адаптивного метода предсказания позволяет добиться большей согласованности, чем при использовании - стандартных механизмов репликации с фиксированной частотой.

Рисунок 8 - Примеры изображений виртуальной среды, получаемых в программном комплексе ТЭДу^гт

Произведено исследование возможностей масштабируемости вычислительной среды. Экспериментально установлено, что при среднем трафике от одного пользователя, равном 1,1 Кбайт/с, в рамках ЛВС при сохранении достаточ-| но высокого уровня согласованности = 0,6 корп. — в качестве единицы измерения оценки £ принят корпус истребителя МиГ-29) и чувствительности равной 1/60 с к системе одновременно может подключиться до 70 пользователей.

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

Рассматриваются две области применения: авиационные тренажерные > комплексы я учебный процесс.

Внедрение высокоуровневого протокола межпроцессого взаимодействия и адаптивного метода предсказания в комплексных авиационных тренажерах, раз-I рабатываемых ЗАО «Транзас» и ОАО «ОКБ Сухого», позволило повысить согласованность между её отдельными визуальными каналами и тем самым значительно увеличить визуальное качество получаемого панорамного изображения.

0,71 -

1 0,70

о

s г n к7

• 'S

» 0,65

i 0,64

О

1 0,63

0 0,1 0,2 0,3 0,4 0,5 0,6 0,7 0,8 0,9 1 1,1 1,2 1,3 1,4 1,5 1,6 Средняя потребляемая одним объектом пропускная способность (Кбайт/сек)

—а—Сценарий 1 (кона, частота, репликации/без предсказ.) • Сценарий 2 (перем. частота репликации/адаптивное предсказание)

Рисунок 9 - Графики зависимости метрики £от значений средней потребляемой одним объектом пропускной способности для двух сценариев экспериментов

Полученные в данной работе результаты нашли отражение в курсе лекций и лабораторных работ по дисциплине «Компьютерные технологии в науке и образовании». В ходе лекционных занятий студенты изучили архитектурные принципы построения РСВР, узнали о проблеме согласованности и способах её поддержания в таких системах. Использование библиотеки ГеггаЛ^е? и системы распределенного моделирования виртуальных трехмерных сцен БИагеЫи в лабораторных работах позволило познакомить студентов с процессом проектирования виртуальных миров и продемонстрировать им идею совместной работы в рамках единой виртуальной среды.

В заключении диссертации приводятся основные теоретические и практические результаты работы.

1) Формализован процесс распределенных вычислений в РСВР с применением событийной модели обмена сообщениями. Предложены подходы к определению понятия согласованности на основе моделей наблюдательной и видовой согласованности, учитывающие особенности РСВР. Введены метрики для оценки видовой согласованности, позволяющие непосредственно измерить разницу между репликами состояний виртуальной среды на процессах системы.

2) Разработана общая архитектура РСВР для случая взаимодействия по схеме клиент-сервер. В рамках данной архитектуры обоснованы и разработаны следующие механизмы обеспечения согласованности данных в РСВР:

М1. высокоуровневый протокол межпроцессного взаимодействия DVRP, позволяющий организовать взаимодействие между процессами РСВР на более высоком логическом уровне, при меньшей загрузке сети за счет поддержки сообщений переменной длины и встроенных механизмов управления репликаци-

ОСНОВНЫЕ РЕЗУЛЬТАТЫ РАБОТЫ

ей данных на основе принципа «избирательной согласованности»',

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

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

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

3) С применением разработанных архитектуры и сетевых механизмов обеспечения согласованности данных разработана программная библиотека TerrnNeti предс.тявпяющяя собой программное обеспечение промежуточного уровня для построения РСВР.

4) Разработана методика качественной оценки разработанных сетевых механизмов, позволяющая установить взаимосвязь между согласованностью состояний объектов на различных процессах РСВР и количеством потребляемых сетевых ресурсов. С помощью созданной методики экспериментально подтверждена эффективность и обоснованность разработанных сетевых механизмов, произведено исследование возможностей масштабируемости вычислительной среды.

5) Разработанные средства доказали свою эффективность на практике в авиационных тренажерных комплексах, а также нашли применение в учебном процессе.

СПИСОК ПУБЛИКАЦИЙ ПО ТЕМЕ ДИССЕРТАЦИИ

1. Харитонов, В.Ю. Вычислительные аспекты построения распределенных систем виртуальной реальности / В.Ю. Харитонов, И.И. Дзегеленок, Д.А. Орлов // Вестник Московского Энергетического института, №5, 2008 г. - М.: Изд. дом МЭИ, 2008. - С. 27-32.

2. Kharitonov, V.Y. А Software Architecture of Distributed Virtual Reality System for Formation Flight Visualization [Electronic resource] / V.Y. Kharitonov // Proceedings of 3rd European Conference for Aero-Space Sciences. Versailles, France. July 6-9th, 2009. - Electronic data. - 1 электрон, опт. диск (CD-ROM); 12 см. - ISBN 978-2-930389-47-8.

3. Kharitonov, V.Y. A Consistency Model for Distributed Virtual Reality Systems / V.Y. Kharitonov // Proceedings of 4th International Conference on Dependability of Computer Systems DepCoS-RELCOMEX 2009. Brunow Palace, Poland. June 30 -July 2,2009. IEEE Computer Society, Los Alamitos, CA, USA, 2009. -P. 271-278.

4. Харитонов, В.Ю. Модели согласованности для распределенных систем виртуальной реальности / В.Ю. Харитонов // Труды третьей всероссийской научно-технической конференции «Методы и средства обработки информации», Москва, 6-8 октября 2009 г., МГУ им. М. В. Ломоносова / Под ред. Л.Н. Королева. - М.: Издательский отдел факультета ВМиК МГУ имени М.В. Ломо-

Носова; МАКС Пресс, 2009. - С. 64-70.

5. Kharitonov, V. Y. An Approach to Consistent Displaying of Virtual Reality Moving Objects / V.Y. Kharitonov // Proceedings of 3rd International Conference on Dependability of Computer Systems DepCoS-RELCOMEX 2008. Szklarska Por?ba, Poland. 25-29 June, 2008. IEEE Computer Society, Los Alamitos, CA, USA, 2008.-P. 390-397.

6. Харитонов, В.Ю. Подход к организации распределенных вычислений для согласованной визуализации движущихся объектов под управлением удаленных пользователей / В.Ю. Харитонов, И.И. Дзегеленок, Д.А. Орлов // Труды четвёртой Международной конференции «Параллельные вычисления и проблемы управления» РАСО'2008. Москва, 27-29 октября 2008 г. — М.: Институт проблем управления им. В.А. Трапезникова РАН, 2008. - С. 867-883.

7. Харитонов, В.Ю. Технология согласованного сетевого взаимодействия удаленных пользователей виртуальной реальности / В.Ю. Харитонов // Радиоэлектроника, электротехника и энергетика. Четырнадцатая Междунар. на-уч.-техн. конф. студентов и аспирантов: Тез. докл. В 3-х т. - М.: Издательский дом МЭИ, 2008. - Т.1. - С. 347-349.

8. Kharitonov, V. Y. Methods of efficiency enhancement of network interaction in distributed systems of virtual reality / V.Y. Kharitonov // Proceedings of 2nd International Conference on Dependability of Computer Systems DepCoS-RELCOMEX 2007. Szklarska Рогфа, Poland. 14-16 June, 2007. IEEE Computer Society, Los Alamitos, CA, USA, 2007. - P. 305-308.

9. Харитонов, В.Ю. Исследование принципов согласованного сетевого взаимодействия в распределенных системах виртуальной реальности / В.Ю. Харитонов // Труды международной научно-технической конференции «Информационные средства и технологии». 16-18 октября 2007 г., в 3-х т. - М.: МЭИ, 2007. -Т2. - С. 214-217.

Ю.Харитонов, В.Ю. Особенности согласованного сетевого взаимодействия удаленных пользователей в распределенных системах виртуальной реальности / В.Ю. Харитонов // Радиоэлектроника, электротехника и энергетика. Тринадцатая Междунар. науч.-техн. конф. студентов и аспирантов: Тез. докл. В 3-х т. - М.: Издательский дом МЭИ, 2007. - Т.1. - С. 423-424.

П.Харитонов, В.Ю. Проект распределенной системы воспроизведения группового полета над местностью / В.Ю. Харитонов, Д.А. Орлов // Труды III Международной конференции «Параллельные вычисления и проблемы управления» РАСО'2006. Москва, 2-4 октября 2006 г. - М.: Институт проблем управления им. В.А. Трапезникова РАН, 2006. - С. 990-998.

12. Харитонов, В.Ю. Многопользовательская виртуальная среда для воспроизведения группового полета над местностью / В.Ю. Харитонов // Радиоэлектроника, электротехника и энергетика. Двенадцатая Междунар. науч.-техн. конф студентов и аспирантов: Тез. докл. В 3-х т. - М.: МЭИ, 2006. - Т.1. С. 469-470.

13. Харитонов, В.Ю. Сетевая модель воспроизведения группового полета над местностью / В.Ю. Харитонов // Труды международной научно-технической конференции «Информационные средства и технологии». 18-2С октября 2005 г., в 3-х т. - М.: Янус-К, 2005. -Т.З. - С. 138-141.

Подписано в печать fl.c$. <0i\ Зак. Ш Тир. iCC п.л.

Полиграфический центр МЭИ(ТУ)

Красноказарменная ул.,д. 13

Оглавление автор диссертации — кандидата технических наук Харитонов, Василий Юрьевич

СПИСОК КЛЮЧЕВЫХ ПОНЯТИЙ И СОКРАЩЕНИЙ.

ВВЕДЕНИЕ.

1. ПРОБЛЕМА СОЗДАНИЯ РАСПРЕДЕЛЕННЫХ КОМПЬЮТЕРНЫХ СИСТЕМ ДЛЯ ВОСПРОИЗВЕДЕНИЯ ВИРТУАЛЬНОЙ РЕАЛЬНОСТИ.

1.1. Уточнение представлений о распределенных системах виртуальной реальности.

1.1.1. Виртуальная реальность. Основные определения и понятия.

1.1.2. Распределенные системы виртуальной реальности.

1.1.3. Основные требования, предъявляемые кРСВР.

1.1.4. Сравнение РСВР с классическими распределенными системами.

1.2. Обзор и классификация существующих распределенных систем виртуальной реальности.

1.2.1. Тренажерные РСВР.

1.2.2. Сетевые виртуальные среды.

1.2.3. Многопользовательские сетевые компьютерные игры и метаверсы.

1.3. Ограниченность механизмов обеспечения согласованности данных в существующих РСВР.

1.4. Постановка задачи диссертационного исследования. Основные допущения.

1.5. Выводы.

2. ЗАДАЧА ОБЕСПЕЧЕНИЯ СОГЛАСОВАННОСТИ ДАННЫХ В РСВР И ПОДХОДЫ К ЕЕ РЕШЕНИЮ.

2.1. Формализованная модель распределенных вычислений в РСВР.

2.2. Уточнение понятия согласованности в РСВР.

2.2.1. Причинно-следственная согласованность.

2.2.2. Наблюдательная согласованность.

2.2.3. Согласованность видов виртуальной среды.

2.2.4. Предлагаемые метрики видовой согласованности.

2.2.5. Частотный подход к определению согласованности и вопросы надежности.

2.3. Аппаратные ограничения, влияющие на согласованность.

2.3.1. Латентность передачи данных.

2.3.2. Колебания латентности — джиггер.

2.3.3. Вычислительная мощность узла.

2.4. Вопросы масштабируемости в РСВР.

2.4.1. Сетевой подход.

2.4.2. Вычислительный подход.

2.5. Способы обеспечения согласованности данных в РСВР.

2.5.1. Согласованность, репликация и чувствительность.

2.5.2. Оптимизация протокола.

2.5.3. Фильтрация данных в соответствии с их значимостью.

2.5.4. Предсказание состояний объектов.

2.6. Выводы.

3. АРХИТЕКТУРА И СЕТЕВЫЕ МЕХАНИЗМЫ ОБЕСПЕЧЕНИЯ СОГЛАСОВАННОСТИ ДАННЫХ В РАСПРЕДЕЛЕННЫХ СИСТЕМАХ ВИРТУАЛЬНОЙ РЕАЛЬНОСТИ.

3.1. Разработка архитектуры РСВР.

3.1.1. Представление РСВР на различных уровнях абстракции.

3.1.2. Сетевые архитектуры взаимодействия процессов в РСВР.

3.1.3. Способы рассылки данных.

3.1.4. Разработка модели управления данными.

3.1.5. Выбор представления данных для хранения состояния виртуальной среды „

3.1.6. Предлагаемая архитектура РСВР.

3.2. Разработка высокоуровневого протокола межпроцессного взаимодействия DVRP.

3.2.1. Место разрабатываемого протокола в эталонной модели OSI.

3.2.2. Состав протокольных сообщений.

3.2.3. Форматы протокольных сообщений и битовые потоки.

3.2.4. Виды взаимодействий процессов.

3.2.5. Принцип «избирательной согласованности» и механизмы репликации данных.

3.3. Вспомогательные механизмы обеспечения согласованности.

3.3.1. Синхронизация часов в РСВР.

3.3.2. Разработка адаптивного метода репликации и предсказания состояний объектов, учитывающего динамику их движения.

3.3.3. Управление совместным доступом к состоянию виртуальной среды.

3.4. Выводы.

4. РАЗРАБОТКА ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ПРОМЕЖУТОЧНОГО УРОВНЯ ДЛЯ ПОСТРОЕНИЯ РАСПРЕДЕЛЕННЫХ СИСТЕМ ВИРТУАЛЬНОЙ РЕАЛЬНОСТИ И ОЦЕНКА ЭФФЕКТИВНОСТИ РЕАЛИЗУЕМЫХ СРЕДСТВ

4.1. Тегга№1 — многоцелевая программная библиотека для разработки и исследования РСВР.

4.1.1. Обзор возможностей библиотеки TerraNet.

4.1.2. Состав и структура библиотеки.

4.1.3. Диаграмма классов ядра.

4.1.4. Идентификация процессов, объектов и атрибутов.

4.1.5. Пример работы с библиотекой TerraNet.

4.1.6. Примеры РСВР, созданных на базе библиотеки TerraNet.

4.2. Оценка эффективности разработанных средств.

4.2.1. Методика качественной оценки разработанных механизмов.

4.2.2. Эксперименты по качественной оценке разработанных механизмов.

4.2.3. Исследование возможностей масштабирования вычислительной среды.

4.3. Выводы.

5. ПРАКТИЧЕСКОЕ ПРИМЕНЕНИЕ РАЗРАБОТАННЫХ СРЕДСТВ.

5.1. Применение механизмов обеспечения согласованности в авиационных тренажерных комплексах.

5.1.1. Основные виды авиационных тренажеров.

5.1.2. Состав тренажера.

5.1.3. Постановка задачи.

5.1.4. Применение высокоуровневого протокола взаимодействия и алгоритмов синхронизации.

5.1.5. Применение адаптивного метода предсказания состояния объектов.

5.2. Внедрение в учебный процесс.

5.3. Перспективы применения и дальнейшего развития разработанных средств.

5.4. Выводы.

Введение 2010 год, диссертация по информатике, вычислительной технике и управлению, Харитонов, Василий Юрьевич

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

В последние 7—10 лет с появлением недорогих и достаточно производительных ПК интерес к интерактивным приложениям трехмерной графики значительно вырос. Сегодня трехмерная компьютерная графика развивается столь же быстро, как и вычислительная техника в целом. Программно-аппаратные средства с каждым годом становятся все более сложными и производительными и позволяют добиваться высокого реализма трехмерных виртуальных миров. Появился отдельный класс интерактивных трехмерных приложений — системы виртуальной реальности, которые позволяют пользователю не просто быть наблюдателем событий, происходящих в виртуальных мирах, но и непосредственно принимать в них участие.

Вместе с повышением реалистичности увеличивается, и масштаб создаваемых систем. С ростом пропускной способности вычислительных сетей растет интерес к распределенньш системам виртуальной реальности ([29], [35], [36], [38]).

Распределенные системы виртуальной реальности (РСВР) представляют собой один из наиболее динамично развивающихся классов распределенных систем

18, 62]. Повышенный интерес к таким системам, в первую очередь, связан с качественно новыми возможностями, которые они предоставляют человеку. Прежде всего, пользователю предоставляется возможность «погружения» в некоторую виртуальную среду, достаточно точно имитирующую реальный мир. Пользователь может взаимодействовать с объектами виртуальной среды, как визуально, так и с помощью различных устройств ввода-вывода. Однако главным свойством РСВР является возможность взаимодействия множества пользователей в общей для них виртуальной среде. РСВР позволяет пользователям работать совместно, невзирая на то, как далеко они друг от друга находятся, что может быть востребовано во многих прикладных областях.

Процесс разработки РСВР можно свести к решению следующих относительно независимых вычислительных подзадач:

1 ) формирование виртуального мира, являющегося интерактивным, единым и согласованным (или непротиворечивым, от англ. consistent) для удаленных пользователей системы;

2) задание законов движения и поведения объектов виртуальной среды с учетом управляющих воздействий пользователей;

3) качественная визуализация виртуальной среды.

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

Существующие в настоящий момент РСВР в основном разрабатываются за рубежом. По сведениям, доступным в открытой печати (например, в [61, 64]), в данной области получены обнадеживающие результаты, однако, конкретные данные по многим ключевым вопросам отсутствуют. Кроме того, даже по имеющейся информации можно судить о наличии большого числа трудностей на пути создания таких систем, среди них:

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

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

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

Для достижения поставленной цели должны быть решены следующие задачи: анализ существующих распределенных систем виртуальной реальности, выявление основных их типов и архитектурных особенностей; формализация распределенных вычислений в РСВР, разработка подходов к определению понятия согласованности данных и её оценке, выделение факторов, влияющих на согласованность; анализ базовых технологических принципов построения и разработка общей архитектуры РСВР; разработка высокоуровневого протокола взаимодействия процессов и других механизмов обеспечения согласованности данных в РСВР; разработка экспериментальной версии программного обеспечении промежуточного уровня, позволяющего создавать РСВР под конкретные области применения, на её основе — программной реализации опытной версии РСВР;

- проведение экспериментальных исследований по оценке эффективности разработанных механизмов на основе разработанной реализации РСВР;

- определение области применения разработанных средств и внедрение полученных результатов.

Объектом исследования данной работы являются распределенные системы виртуальной реальности.

Предмет исследования: сетевые механизмы обеспечения согласованности данных в распределенных системах виртуальной реальности.

Методы исследования. Системный анализ, теория множеств, элементы теории графов, теория распределенных систем, теория объектно-ориентированного программирования и натурный эксперимент.

Научная новизна работы. Новыми являются следующие полученные в диссертации результаты:

1) формализован процесс распределенных вычислений в РСВР с использованием событийного подхода, что позволило подойти к формальному определению понятия согласованности данных в таких системах;

2) предложены два возможных подхода к определению понятия согласованности данных: модели наблюдательной и видовой согласованности, последний подход позволяет оценить согласованность численно, на основе введенных оценок;

3) обоснованы и разработаны сетевые механизмы обеспечения согласованности данных в РСВР, в их числе: высокоуровневый протокол межпроцессного взаимодействия ИУЯР со встроенными механизмами управления репликацией данных на основе принципа «избирательной согласованности»; адаптивный метод репликации и предсказания состояний объектов, учитывающий динамику их движения; механизм управления совместным доступом многих пользователей к состоянию виртуальной среды; метод синхронизации часов процессов РСВР;

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

Достоверность и обоснованность полученных в диссертации результатов подтверждается опытным макетированием РСВР и соответствием получаемых показателей результатам проведенных экспериментальных исследований, а также результатами внедрения разработанных средств.

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

1) экспериментально подтверждена возможность создания РСВР и определены вероятные области её применения, в их числе: образование и наука, тренажерные комплексы и другие области, требующие удаленного взаимодействия многих участников (пример — территориально-распределенные ситуационные центры);

2) на базе предложенных механизмов обеспечения согласованности разработана экспериментальная программная библиотека TerraNet, представляющая собой ПО промежуточного уровня (middleware), которая позволяет создавать РСВР для конкретных областей применения, с возможностью их гибкой настройки. В частности, на её основе на кафедре ВМСиС МЭИ (ТУ) была разработана программная среда для модельного воспроизведения группового полета летательных аппаратов над местностью [21, 43];

3) предложенные в работе сетевые механизмы нашли применение в опытных версиях комплексных авиационных тренажеров, разрабатываемых ЗАО «Транзас» и ОАО «ОКБ Сухого»;

4) полученные в диссертационном исследовании результаты были использованы на кафедре ВМСиС МЭИ (ТУ) при выполнении госбюджетной НИР (гос. per. № 01200605949), а также при подготовке курса лекций и лабораторных работ по дисциплине для магистров «Компьютерные технологии в науке и образовании», прочитанного в сентябре 2009 года;

5) исследования, проводимые по теме диссертации, поддержаны: программой Рособразования «Развитие научного потенциала высшей школы» (проект

2.1.2/6718 «Стратегии организации и поддержки крупномасштабных вычислений в распределенных средах»; мероприятие: 2. «Проведение фундаментальных исследований в области естественных, технических и гуманитарных наук. Научно-методическое обеспечение развития инфраструктуры вузовской науки», раздел: 2.1. «Проведение фундаментальных исследований в области естественных, технических и гуманитарных наук», подраздел: 2.1.2. «Проведение фундаментальных исследований в области технических наук»); Федеральной целевой программой «Научные и научно-педагогические кадры инновационной России» на 2009-2013 годы (Государственный контракт П2227 «Программные модели и системы планирования распределённых вычислений»; «Проведение поисковых научно-исследовательских работ по направлениям: «Механика», «Информатика», «Математика», выполняемому в рамках мероприятия 1.2.1 «Проведение научных исследований научными группами под руководством докторов наук», мероприятия 1.2 «Проведение научных исследований научными группами под руководством докторов наук и кандидатов наук» направления 1 «Стимулирование закрепления молодежи в сфере науки, образования и высоких технологий»); Советом по грантам Президента Российской Федерации на право получения средств для государственной поддержки ведущих научных школ Российской Федерации (грант НТТТ-7239.2010.9 «Планирование масштабных вычислений и управление ресурсами распределенных вычислительных сред»).

Апробация работы. Основные результаты работы докладывались и обсуждались на следующих научных и научно-технических конференциях:

- Третья Европейская научно-технической конференции по аэрокосмическим наукам EUCASS-2009 (Грант РФФИ 09-07-09229-мобз). Место проведения: Версаль, Франция. Организаторы: EUCASS и ASTech Paris Region при поддержке Французского национального центра научных исследований (CNRS). 6-9 июля 2009 г.

- Третья Всероссийская научная конференция «Методы и средства обработки информации». Место проведения: Москва. Организатор: МГУ им. М. В. Ломоносова. 6-8 октября 2009 г.

- Международная конференция по проблемам надежности вычислительных систем DepCoS-RELCOMEX. Место проведения: Польша. Организатор: Вроцлав-ский Технологический университет при поддержке Института инженеров по электротехнике и электронике (IEEE). 2007, 2008, 2009 гг.

- Международная конференция «Параллельные вычисления и проблемы управления» РАСО. Место проведения: Москва. Организатор: Институт проблем управления им. В.А. Трапезникова РАН. 2006, 2008 гг.

- Международная научно-техническая конференция «Информационные средства и технологии». Место проведения: Москва. Организатор: МЭИ (ТУ) и МГТУ «СТАНКИН». 2005, 2006, 2007 гг.

- Международная научно-техническая конференция студентов и аспирантов «Радиоэлектроника, электротехника и энергетика». Место проведения: Москва. Организатор: МЭИ (ТУ). 2006, 2007, 2008 гг.

Публикации. Основные результаты, полученные при выполнении диссертационной работы, опубликованы в 13 печатных работах (4 из них — на английском языке), включая 1 работу в издании, рекомендуемом ВАК.

Структура диссертации. Основная часть диссертации состоит из введения, пяти глав и заключения и содержит 157 страниц машинописного текста, 51 рисунок и 3 таблицы. Список литературы включает 71 наименование. Дополнительная часть содержит 4 приложения. Общий объем диссертации — 187 страниц машинописного текста (51 рисунок, 8 таблиц).

Заключение диссертация на тему "Сетевые механизмы обеспечения согласованности данных в распределенных системах виртуальной реальности"

5.4. Выводы

Данная глава была посвящена практическому применению разработанных механизмов и программных средств. Были рассмотрены две области применения: авиационные тренаэ!серные комплексы и учебный процесс'.

- внедрение высокоуровневого протокола межпроцессого взаимодействия и методов предсказания в распределенную систему визуализации авиатренажера позволило повысить согласованность между её отдельными каналами и тем самым значительно увеличить качество получаемого панорамного изображения;

- использование библиотеки Тегта№1 и системы распределенного моделирования виртуальных трехмерных сцен ShareEd.it в учебном процессе позволило познакомить студентов с проблематикой распределенных систем виртуальной реальности и продемонстрировать им идею совместной работы в рамках единой виртуальной среды.

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

ЗАКЛЮЧЕНИЕ

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

В ходе выполнения диссертационной работы были получены следующие результаты.

1) Формализован процесс распределенных вычислений в РСВР с применением событийной модели обмена сообщениями. Предложены подходы к определению понятия согласованности на основе моделей наблюдательной и видовой согласованности, позволяющие учитывать особенности распределенных вычислений в РСВР. Введены метрики для оценки видовой согласованности, позволяющей непосредственно измерить разницу между репликами состояний виртуальной среды в процессах системы.

2) Разработана общая программная архитектура РСВР для случая взаимодействия по схеме клиент-сервер. В рамках данной архитектуры обоснованы и разработаны следующие механизмы обеспечения согласованности данных в РСВР:

М1. высокоуровневый протокол межпроцессного взаимодействия ИУКР, позволяющий организовать взаимодействие между процессами РСВР на более высоком логическом уровне, при меньшей загрузке сети за счет поддержки сообщений переменной длины и встроенных механизмов управления репликацией данных на основе принципа «избирательной согласованности»;

М2. адаптивный метод репликации и предсказания состояния объекта, позволяющий за счет учета динамики движения объекта уменьшить нагрузку на сеть при одновременном повышении точности предсказания состояний объектов;

МЗ. механизм управления совместным доступом к состоянию виртуальной среды, позволяющий корректно обрабатывать одновременные обращения нескольких процессов к одному объекту и разрешать связанные с этим ситуации нарушения согласованности;

М4. метод синхронизации часов процессов РСВР, основанный на алгоритме Кристиана, и позволяющий достигнуть большей точности синхронизации процессов, за счет учета статистики изменения ла-тентности при коррекции показаний часов.

3) С применением разработанных архитектуры и сетевых механизмов обеспечения согласованности данных разработана программная библиотека ТеггаЫе^ представляющая собой программное обеспечение промежуточного уровня для построения РСВР.

4) Разработана методика качественной оценки разработанных сетевых механизмов, позволяющая установить взаимосвязь между согласованностью состояний объектов на различных процессах РСВР и количеством потребляемых сетевых ресурсов. С помощью созданной методики экспериментально подтверждена эффективность и обоснованность разработанных сетевых механизмов, произведено исследование возможностей масштабируемости вычислительной среды.

5) Разработанные средства доказали свою эффективность на практике в авиационных тренажерных комплексах, а также нашли применение в учебном процессе.

Библиография Харитонов, Василий Юрьевич, диссертация по теме Вычислительные машины и системы

1. Архитектура виртуальных миров / Под ред. М.Б. Игнатьева, A.B. Никитина, А.Е. Войскунского. — ГУАП, 2009.

2. Бабенко, B.C. Виртуальная реальность: Толковый словарь терминов / B.C. Бабенко. СПб.: ГУАП, 2006.

3. Боресков, A.B. Графика трехмерной компьютерной игры на основе OpenGL / A.B. Боресков. М.: Диалог-МИФИ, 2004.

4. Боресков, A.B. Расширения OpenGL / A.B. Боресков. СПб.: БХВ-Петербург, 2005. - 688 с.

5. Брежнев, А.Ф. Семейство протоколов TCP/IP Электронный ресурс. / А.Ф. Брежнев, PJL Смелянский. Электрон, дан. - Режим доступа: http://www.lib.ru/TCPBOOK.

6. By, M. OpenGL. Официальное руководство программиста / М. By, Д. Нейдер, Т. Девис, Д. Шрайнер. Киев: «ДиаСофт», 2002. - 592 с.

7. ГОСТ 19.701-90. Схемы алгоритмов, программ, данных и систем.

8. ГОСТ 7.1-2003. Библиографическая запись. Библиографическое описание. Общие требования и правила составления.

9. ГОСТ 7.32-91. Отчет о научно-исследовательской работе. Структура и правила оформления.

10. Елисов, JI.H. Качество профессиональной подготовки авиационного персонала и безопасность воздушного транспорта: Монография / JI.H. Елисов. М.: Исследовательский центр проблем качества подготовки• специалистов, 2006. — 244 с.

11. Окольнишников, В.В. Представление времени в имитационном моделировании / В.В. Окольнишников // Вычислительные технологии. Т. 10, №5, Сибирское отделение РАН, 2005. С. 57-77.

12. Приемы объектно-ориентированного проектирования / Э. Гамма, Р. Хелм, Р. Джонсон, Дж. Влиссидес. Паттерны проектирования. СПб.:1. Питер, 2007.

13. Реальные деньги виртуальной реальности Электронный ресурс. -Электрон, дан. — Режим доступа: http://www.ve-group.ru/vrl391.html.

14. Страуструп, Б. Язык программирования С++. Специальное издание / Б. Страуструп. Пер. с англ. М.: ООО «Бином-Пресс», 2005 г. - 1104 с.

15. Таненбаум, Э. Распределенные системы: принципы и парадигмы / Э. Таненбаум, М. Стен. СПб.: «Питер», 2003. - 877 с.

16. Тель, Ж. Введение в распределенные алгоритмы / Ж. Тель. — М.: МЦНМО, 2009.-616 с.

17. Топорков, В.В. Модели распределенных вычислений / В.В. Топорков. -М.: ФИЗМАТЛИТ, 2004. 320 с.

18. Харитонов, В.Ю. Вычислительные аспекты построения распределенных систем виртуальной реальности / В.Ю. Харитонов, И.И. Дзегеле-нок, Д.А. Орлов // Вестник Московского Энергетического института, №5, 2008 г. М.: Изд. дом МЭИ, 2008. - С. 27-32.

19. Babaoglu, О. Consistent Global States of Distributed Systems: Fundamental Concepts and Mechanisms / O. Babaoglu, K. Marzullo // Distributed Systems, Addison-Wesley, Wokingham, 1993. — P. 55-96.

20. Bartle, R. Interactive multi-user computer games / R. Bartle // Technical report, British Telecom, 1990. Electronic resource. Electronic data. — Режим доступа: http://www.mud.co.uk/richard/imucg.htm.

21. Blanchard, С. Reality built for two: A virtual reality tool. In Computer Graphics / C. Blanchard et al. // Symposium on Interactive 3D Graphics, R. Riesenfeld and C. Sequin, Eds., vol. 24, 1990. P. 35-36.

22. Blow, J. A look at latency in networked games / J. Blow // Game Developer, 5(7), 1998.-P. 28-40.

23. Bouillot, N. Consistency models for distributed interactive multimedia applications / N. Bouillot, E. Gressier-Soudan // SIGOPS Oper. Syst. Rev. 38, 4 (Oct. 2004), 2004. P. 20-32.

24. Cai, W. An auto-adaptive dead reckoning algorithm for distributed interactive simulation / W. Cai, F. Lee, L. Chen // Proceedings of the Thirteenth Workshop on Parallel and Distributed Simulation. May 1999. - P. 82-89.

25. NPSNET-V: A New Beginning for Dynamically Extensible Virtual Environments / M. Capps et al. // IEEE Computer Graphics & Applications, vol. 20, 2000.-P. 12-15.

26. Coulouris, G. Distributed Systems: concepts and design / G. Coulouris, J. Dollimore, T. Kindberg. Addison-Wesley, third edition, 2001.

27. Cristian, F. Probabilistic clock synchronization / F. Cristian // Distributed Computing, Vol. 3, 1989. P. 146-158.

28. Delaney, D. On consistency and network latency in distributed interactive applications: a survey part I / D. Delaney, T. Ward, S. McLoone // Presence: Teleoper. Virtual Environ. 15, 2 (Apr. 2006). - MIT Press Cambridge, MA, USA, 2006. P. 218-234.

29. Diot, C. A Distributed Architecture for Multiplayer Interactive Applications on the Internet / C. Diot, L. Gautier // IEEE Networks magazine, Vol. 13, 1999.-P. 6-15.

30. Frécon, E. DIVE: A Scaleable network architecture for distributed virtual environments / E. Frécon, M. Stenius // Distributed Systems Engineering Journal (special issue on Distributed Virtual Environments), 5(3), 1998. — P. 91-100.

31. Funkhouser, T. RING: A Client-Server System for Multi-User Virtual Environments / T. Funkhouser // Symposium on Interactive 3D Graphics, April 1995.-P. 85-92.

32. High-level development of multiserver online games / F. Glinka et al. // Int. J. Comput. Games Technol, Jan. 2008, 2008. P. 1-16.

33. Greenhalgh, C. MASSIVE: a collaborative virtual environment for teleconferencing / C. Greenhalgh, S. Benford // ACM Transactions on ComputerHuman Interaction 2, 3. P. 239-261.

34. IEEE standard for information technology protocols for distributed simulation applications: Entity information and interaction // IEEE standard 12781993. - New York: IEEE Computer Society, 1993.

35. IEEE Standard for Modeling and Simulation (M&S) High Level Architecture (HLA) Framework and Rules // IEEE Standard 1516-2000 (2000).

36. Kshemkalyani, A. Distributed Computing: Principles, Algorithms, and Systems / A. Kshemkalyani, M. Singhal. Cambridge University Press, New York, NY, USA, 2008.

37. Lamport, L. Time, clocks, and the ordering of events in a distributed systern. Commun / L. Lamport. ACM, 1978. - P. 558-565.

38. MÄK High Performance RTI Electronic resource. Electronic data. — Режим доступа: http://www.mak.com/products/rti.php.

39. Matijasevic, M. A framework for multi-user distributed virtual environments / M. Matijasevic et al. // Proceedings of the IEEE Transactions on systems, man, and cybernetics Part B: Cybernetics, Vol. 32, No. 4, 2002. — P. 416^*29.

40. Mieloszyk, K. Component Based Flight Simulation in DIS Systems / K. Mieloszyk, B. Wiszniewski // Distributed and Parallel Systems. Springer Netherlands, Vol. 777, 2005. - P. 173-181.

41. Mills, D. L. Internet time synchronization: the network time protocol / D. L. Mills // IEEE Transactions on Communications, 39(10), 1991. P. 1482-1493.

42. Morse, K. L. Interest Management in Large-Scale Distributed Simulations / K. L. Morse // Technical report of Department of Information and Computer Science, university of California, Irvine, 1996.

43. OpenSceneGraph an open source high performance 3D graphics toolkit Electronic resource. - Electronic data. - Режим доступа:http://www.openscenegraph.org.

44. Pitch pRTI Electronic resource. Electronic data. — Режим доступа: http://www.pitch.se/products/prti.

45. Pope, A. The SIMNET network and protocols / A. Pope // Technical Report 7102. Cambridge, MA: BBN Systems and Technologies, 1989.

46. Qin, J. A framework using cluster-based hybrid network architecture for collaborative virtual surgery / J. Qin et al. // Computer Methods and Programs in Biomedicine, Volume 96, Issue 3. Elsevier, Ireland, 2009. P. 205-216.

47. Quake Live Electronic resource. Electronic data. - Режим доступа: http://www.quakelive.com.

48. Second Life Project Electronic resource. Electronic data. - Режим доступа: http://secondlife.com/.

49. Shaw, С. Decoupled Simulation in Virtual Reality with the MR Toolkit / C. Shaw et al. // ACM Transactions on Information Systems, 11(3), 1993. — P. 287-317.

50. Singhal, S. Networked Virtual Environments: Design and Implementation / S. Singhal, M. Zyda. USA, MA: ACM Press/Addison Wesley, 1999.

51. Smed, J. Algorithms And Networking for Computer Games / J. Smed, H. Hakonen. UK, Chichester: John Wiley & Sons, 2006.

52. Source Multiplayer Networking. Valve Software Electronic resource. -Electronic data. Режим доступа: http://developer.valvesoftware.com/wiki/ SourceMultiplayerNetworking.

53. Stevens, W. R. UNIX Network Programming Volume 1, Third Edition: The Sockets Networking API / W. R. Stevens, B. Fenner, A. M. Rudoff. Addison Wesley, 2003.

54. Strassburger, S. Future trends in distributed simulation and distributed virtual environments: results of a peer study / S. Strassburger, T. Schulze, R. Fujimoto // In Proceedings of the 40th Conference on Winter Simulation

55. Miami, Florida, December 07 10, 2008). - Miami, Florida, USA, 2008. -P. 777-785.

56. The Portico Project Electronic resource. — Electronic data. — Режим доступа: http://porticoproject.org.

57. Tse-Au, E.S.H. End-to-end QoS measurement: analytic methodology of application response time vs. tunable latency in IP networks / E.S.H. Tse-Au, P.A. Morreale // Proceedings of IEEE/IFIP Network Operations and Management Symposium, 2000. P. 129-142.

58. Waters, R. Diamond Park and Spline: Social Virtual Reality with 3D Animation, Spoken Interaction and Runtime Extendability / R. Waters et al. // Presence, 6(4), 1997. P. 461-481.

59. Zackariasson, P. Massively Multiplayer Online Games: A 21 Century Service / P. Zackariasson, T. L. Wilson // Proceedings of the Other Players Conference. It University of Copenhagen, December 6-8 2004. - Copenhagen: IT University of Copenhagen, 2004.

60. Zhou, S. Time-Space Consistency in Large-Scale Distributed Virtual Environments / S. Zhou et al. // ACM Trans. Model. Comput. Simul. Vol. 14, 1, 2004. P. 31-47.