В статье описывается система визуализации WWW, известная под названием Labyrinth (Лабиринт). В ней используется недавно определенный "протокол киберспейса" (Cyberspace Protocol), который обеспечивает визуализацию и стандартные определения объектов, сцен и размещения предметов в виртуальном мире сети Internet.
 

Введение

Появление в 1991 году системы WWW (World Wide Web, всемирная паутина) обогатило сеть Internet множеством новых возможностей управлени информацией. Впервые все пользователи и программисты сети получили доступ к основным сервисам (FTP, Gopher, Telnet и другим) при помощи единого и абстрактного механизма. Кроме того, система WWW обогатила Internet еще двумя сервисами: HTTP (HyperText Transfer Protocol, протокол передачи гипертекста), который обеспечил быстрый доступ к любым файлам, и URL (Uniform Resource Locator, стандартный указатель ресурсов), который предоставил универсальный способ указания на любые данные, находящиеся где-либо внутри домена Internet.


Первым следствием появления WWW стало резкое увеличение удобства пользовани различными услугами сети, которое очевидным образом коррелировало с улучшением механизма указания на эти услуги. Другими словами, сеть Internet полезна и используется лишь настолько, насколько она в состоянии удовлетворять запросы, делаемые пользователями. Система WWW сделала информацию в Internet легко- и общедоступной. Кроме того, она организовала все данные сети в универсальную структуру. С точки зрения WWW все четыре или пять миллионов хостов в сети могут рассматриваться как один источник информации, а вся хранящаяся на них информация-как один документ с очень сложной структурой.


Появление WWW положило начало еще двум процессам. Первый из них -- это резкое увеличение сетевого трафика (суммарный трафик сети в 1993 году увеличился по сравнению с 1992 годом в 3000 раз!), а второй-реорганизация информации. Хранящиеся в сети данные постепенно начали преобразовыватьс в структуры, наиболее удобные для доступа средствами WWW. (Это может послужить хорошей иллюстрацией концепции «носителя как сообщения», которая заключается в том, что возникновение нового носителя (средства передачи) информации (в данном случае, системы WWW) вызывает реорганизацию информации на ранее существовавших носителях.) Новая организаци информации образует со старой, если можно так выразиться, прямой угол. То есть, ранее сеть Internet была линейным источником данных, в то время как сегодня структура перекрестных ссылок в документах сделала ее по меньшей мере двумерной ("страничной"). В соответствии с традициями западного мышления информация хранится в иерархической форме, и исключения из этого правила чрезвычайно редки. Вы должны очень постараться, чтобы найти в Internet какой-нибудь "антииерархический" документ, и скорее всего выглядеть он будет весьма непривычно.


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

 

Поэтому вполне естественным представляется дальнейшее развитие WWW, выводящее концептуальную модель этой системы из двух измерений в три. Для этого, очевидно, необходимы две вещи: расширение формата HTML для описани геометрии и пространства, и универсальное соглашение о способах представлени «пространства» в Internet. Исследования в этой области проводятся сразу по нескольким направлениям, и их результатом стало недавнее принятие стандарта языка VRML 2.0 (Virtual Reality Markup Language, язык программирования виртуальной реальности). В этой статье мы опишем созданный нами WWW-клиент Labyrinth, который может использоваться дл визуализации системы WWW в качестве пространства (работа над ним велась еще до принятия стандарта VRML 2.0).

 

Визуализация и VRML


Стандартный язык HTML используется для представления текстовых и графических данных, и содержит в себе определенные (весьма ограниченные) возможности их форматирования. Кроме того, HTML обеспечивает механизм ссылок для установления связей между данными. Корни HTML, как и его предшественника SGML, лежат в тексте, то есть в двумерном носителе информации. Поэтому при разработке "Лабиринта" мы вышли за пределы HTML, разработав простой язык описания геометрии и пространства.


Трехмерный интерфейс WWW должен выполнять три основные функции.

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

Последняя версия языка VRML вполне отвечает этим требованиям и, несмотря на всю простоту, содержит все необходимые составляющие.

 

На сегодняшний день VRML-файлы "Лабиринта" представляют собой специальный тип данных (наподобие MPEG или AIFF), и могут просматриваться при помощи специальной программы. Это далеко не оптимальное решение, и гораздо удобнее было бы расширить HTML, включив в него пространственные типы данных, которые в зависимости от возможностей конкретной программы-клиента могли бы визуализироватьс либо игнорироваться. В качестве основы такого расширения могли бы послужить стандарты OpenGL, OpenInventor или HOOPS. Разработанный нами язык может служить лишь в качестве примитивного примера потенциальных возможностей такого сочетания.


Любая концептуализация пространства должна содержать в себе качество числа, то есть помимо общего утверждения существования объекта необходимо ответить на вопросы "сколько?" и "где?". Электронное пространство представляетс в цифровом виде, и для того, чтобы им одновременно могли пользоваться несколько миллионов человек, оно должно быть непрерывным, уникальным, очень большим и в то же время плотным. Впрочем, программа-клиент WWW обычно имеет дело не со всем пространством сразу, а только с ограниченной его частью. Операции чаще всего происходят в той области, в которой находится пользователь, и локальное описание пространства имеет гораздо большее значение, чем его глобальное представление.


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

 

Киберпространство


Для того, чтобы обеспечить непрерывность представления и связывани информации, необходимо создать универсальную сетевую концепцию пространства, то есть некий пространственный аналог WWW. Такое пространство принято называть «киберспейсом» (англ. Cyberspace, киберпространство). Такое название подразумевает, что это обычное пространство, имеющее как минимум три измерения, но в то же время существующее только как "массова галлюцинация" пользователей на подключенных к этому пространству хостах сети. Существует только один киберспейс, точно так же, как существует только одна система WWW.


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


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

 

Метрика киберпространства


Сеть Internet определяет адресное пространство своих хостов в виде 32-разрядного числа, состоящего из четырех октетов. В общей форме адрес записывается так: {s.t.u.v}. С учетом этого одномерного адресного пространства киберспейс должен обеспечить отображение N-мерной карты (в обсуждаемом нами каноническом, "Гибсонианском" киберспейсе N=3) так, чтобы каждый объект или «место» можно было бы однозначно определить тремя его координатами {x.y.z}.


Для того, чтобы обеспечить необходимый размер и «плотность» киберспейса, необходимо ввести систему нумерации, имеющую очень большой динамический диапазон. Для этого нами была разработана система «адресных элементов», каждый из которых содержит описание участка динамического диапазона в форме {p.x.y.z}. Здесь p - это значение места, а x, y и z - метрические координаты для соответствующих измерений. Мы реализовали адресный элемент в виде 32-разрядного числа таким образом, что p может принимать значения от -32 до +31, а x, y и z представляются в виде октетов со знаком. Адресные элементы могут объединяться друг с другом для достижени необходимой точности ("разрешения"). Большинство операций в киберспейсе происходит внутри ограниченного пространства, и поэтому нам кажется, что 32 или в крайнем случае 64 бит вполне достаточно для точного представления любой точки. Такая система нумерации обладает сразу двумя важными преимуществами - широким динамическим диапазоном и компактностью (которая играет очень важную роль в сетевом окружении).


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


Итак, в таком виде киберспейс обладает мощной метрической системой, и можно уже говорить о его использовании для размещени объектов. Первый уровень «заполнения» киберспейса-это утверждения о существовании точек и их метрике. Второй уровень- это сведени о содержимом этих точек. Содержимое, в сущности, не является частью киберспейса и относится не к самому пространству, а к его участникам. Единственный сервис, предоставляемый собственно киберспейсом, - это поддержание связи между пространственным описанием и адресом хоста. Эта связь может быть представлена в виде функции:

 

f(s) > = a

 

где s - это пространственный идентификатор, а a - адрес хоста в сети.


Такова основа математической конструкции киберспейса.

 

Реализаци протокола киберпространства


Если киберспейс можно свести к одной-единственной функции, то, очевидно, его можно передать и при помощи транзакционного протокола, в котором каждому запроcу соответствует ответ (возможно, пустой, то есть NULL). В описываемой нами реализации протокол киберспейса реализован при помощи простого механизма «клиент-сервер», в котором предусмотрены несколько базовых операций: регистрация, исследование и удаление.


Операция регистрации заключается в том, что клиент киберспейса сообщает серверу о том, что им занято определенное пространство. Другими словами, киберспейс существует лишь постольку, поскольку существуют составляющие его объекты. Это является естественным следствием «принципа индифферентности Бенедикта», который гласит: "Отсутствие в киберспейсе имеет свою стоимость".


Процесс исследования еще будет описан в подробностях немного ниже. Основная транзакци чрезвычайно проста: на основании пространственного описания определенной области киберспейса вы-дать информацию о хостах, которые ее составляют. Ответ на такую транзакцию может быть как нулевым (NULL, если указанна область не существует), так и практически бесконечным (например, если в запросе указан объем, включающий в себя весь киберспейс). Таким образом, в запросе на исследование (как и в запросе на регистрацию) необходимо предусмотреть возможность указания требуемого уровня детализации. Это поможет оптимизировать обслуживание запросов. Например, в одних случаях вполне достаточно просто данных о существовании или несуществовании той или иной области, а в других пользователя интересует только ее общий вид, а не детальное представление. Таким образом, степень детализации также может рассматриватьс как одна из метрических характеристик киберспейса.


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


Наконец, процесс удалени представляет собой логическую инверсию процесса регистрации, то есть заключается в удалении определяемой клиентом области пространства из киберспейса. Эти три простейшие транзакции образуют основу протокола киберспейса в реализации «клиент-сервер».

 

Серверы киберпространства


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


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


Трансакция исследования является ядром реализации сервера.


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


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


Основной побочный эффект такого метода состоит в том, что киберспейс становитс не «мгновенно-доступным», а ограничиваетс шириной полосы пропускания, мощностью процессора и уровнем детализации в соответствии со следующей формулой:

 

 

Здесь с - некая константа, "скоростной предел" киберспейса (аналогичный максимальной скорости света ‘с' в реальном мире), l -уровень детализации, b - ширина полосы пропускани используемой для передачи данных сети, p - мощность процессора, D - количество измерений киберспейса и r - положение точки внутри пространства. Функция ‘ро' определяет плотность исследуемого объема киберспейса.


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


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


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

 

Киберпространство и WWW


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

 

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


Новый URL может выглядеть примерно следующим образом:

 

cs://{pa.x.y.z}{pb.x.y.z}.../файл,

 

где {pn...} представляет собой набор адресных элементов протокола.


Преобразование такого URL в конкретный набор соответствующих ему данных происходит в два этапа: сначала клиент должен установить соответствие между пространственным положением точки и конкретным адресом хоста, а затем передать этому хосту соответствующий запрос. Здесь возникают два вопроса. Один из них уже упоминался и связан с множественностью хостов, «населяющих» определенную область киберспейса, а второй касается принятого по умолчанию способа доступа к данным. Если транзакция исследовани области киберспейса вернула несколько адресов хостов, то запрос должен быть послан каждому из них, иначе представление пространства окажетс неполным. В идеале визуализирующий WWW-клиент должен пользоваться механизмом параллельного обслуживания с реентерабельными WWW-библиотеками. Это позволит обрабатывать несколько запросов одновременно и асинхронно.


Кроме того, нужно выбрать стандартный метод доступа к данным.


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

 

Лабиринт


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


Алгоритм работы клиента достаточно прост и похож на алгоритмы других WWW-клиентов. После запуска клиент опрашивает пространство возле своего «дома», то есть локального местоположения, и загружает находящийся там «мир». При перемещении пользователя по киберспейсу клиент генерирует запросы к серверам и другим хостам, определяя то, как должны выглядеть изучаемые пользователем места. Здесь, кстати, следует подчеркнуть исключительную важность грамотных алгоритмов кэширования и предсказания, без которых путешествие по киберспейсу будет прерывистым и неудобным.


В сегодняшнем варианте нашей системы объекты имеют только два типа поведения: либо вообще никакого поведения, либо ссылку при помощи URL на другой набор данных. Связанный с объектом URL может указывать как на другой «мир», то есть другую область киберспейса (в этом случае объект называется порталом), так и на данные любого другого типа, которые могут быть просмотрены при помощи дополнительной программы. Система "Лабиринт" рассчитана на работу в сотрудничестве с другими WWW-клиентами наподобие NCSA Mosaic или Netscape и поэтому не уделяет особенного внимания просмотру данных различного типа.

 

Заключение


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


«Лабиринт» и протокол киберспейса являются логическими продолжениями системы WWW и сети Internet. Действительно, по отдельности эти три составляющие практически бесполезны, а вместе могут поднять электронные коммуникации на новый уровень. Визуализация WWW делает сеть Internet более удобной для поиска и изучения информации, так как ориентирует ее на человеческие потребности и особенности восприятия. До сих пор этот антропоцентрический подход остаетс единственным серьезным вкладом «виртуальной реальности» в информатику.


Визуализация сети Internet свидетельствует об окончании «первого века» сетей, в котором балом правили протоколы, сервисы и инфраструктура. На пороге стоит "второй век", который будет отмечен повышением интереса к структурам данных и доступности информации. Если "первый век" можно было охарактеризовать вопросом "Откуда взялись эти данные?", то вопрос второго века - "Как мне получить информацию, которая мне нужна?"

 

2005.02.03
19.03.2009
В IV квартале 2008 г. украинский рынок серверов по сравнению с аналогичным периодом прошлого года сократился в денежном выражении на 34% – до $30 млн (в ценах для конечных пользователей), а за весь календарный год – более чем на 5%, до 132 млн долл.


12.03.2009
4 марта в Киеве компания Telco провела конференцию "Инновационные телекоммуникации", посвященную новым эффективным телекоммуникационным технологиям для решения задач современного бизнеса.


05.03.2009
25 февраля в Киеве компания IBM, при информационной поддержке "1С" и Canonical, провела конференцию "Как сохранить деньги в условиях кризиса?"


26.02.2009
18-19 февраля в Киеве прошел юбилейный съезд ИТ-директоров Украины. Участниками данного мероприятия стали ИТ-директора, ИТ-менеджеры, поставщики ИТ-решений из Киева, Николаева, Днепропетровска, Чернигова и других городов Украины...


19.02.2009
10 февраля в Киеве состоялась пресс-конференция, посвященная итогам деятельности компании "DiaWest – Комп’ютерний світ" в 2008 году.


12.02.2009
С 5 февраля 2009 г. в Киеве начали работу учебные курсы по использованию услуг "электронного предприятия/ учреждения" на базе сети информационно-маркетинговых центров (ИМЦ).


04.02.2009
29 января 2009 года в редакции еженедельника "Computer World/Украина" состоялось награждение победителей акции "Оформи подписку – получи приз!".


29.01.2009
22 января в Киеве компания "МУК" и представительство компании Cisco в Украине провели семинар для партнеров "Обзор продуктов и решений Cisco Small Business"

 

 
 
Copyright © 1997-2008 ИД "Комиздат".