Вуль Владимир Абрамович
Шрифт:
Таблица 7.1. Сравнительные характеристики серверов доставки медиа фирмы Sun
Рассмотрим подробнее одну из моделей сервера – Sun MediaCenter UltraSPARC. Это высокопроизводительная масштабируемая система с невысокой стоимостью базовой конфигурации. Как и все модели этой линии, она предназначается для доставки цифрового видео по сетевым и вещательным каналам в режиме video-on-demand.
MediaCenter UltraSPARC базируется на сервере Sun Ultra Enterprise 2 и имеет масштабируемую многопроцессорную архитектуру с двумя процессорами UltraSPARC 167 МГц, каждый с 512 Кбайт памяти на чипе и 2 Мбайт кэшпамяти на модуль. Обмен данными между процессорами, памятью и портами ввода/вывода осуществляется пакетным переключателем с малой задержкой. Из 50 Гбайт внешней памяти Raid-4, 42 Гбайт – это чистая память для хранения видео, и еще 8 Гбайт используются для контроля. Новая версия 2.0 ПО MediaCenter позволяет масштабировать внешнюю память 100 Гбайт (124 часа видео при компресии 1,5 Мбайт/с). Сетевые интерфейсы в стандартах ATM, Fast Ethernet, Ethernet обеспечивают гарантированную пропускную способность 100 Мбит/с для передачи видео. Серверы MediaCenter оснащаются всеми необходимыми компонентами для хранения и доставки видео. В частности, используемая в них операционная система Solaris дополнена специализированным обеспечением, превращающим файл-сервер Ultra Enterprise в медиа-сервер. Как обычно, в системах такого класса большое внимание уделяется надежности. Сервер Sun MediaCenter защищен от сбоя одного диска механизмом контроля четности Block-Interleaved Parity, соответствующим Raid Level 4. Средства системного администрирования включают замену дисков без перезагрузки системы, управление размещением медиа-документов и мониторинг сети.
Специальное программное обеспечение Sun MediaCenter включает:
✓ модифицированное ядро операционной системы Solaris;
✓ модифицированные драйверы сетевых интерфейсов, настроенные на вывод мультимедиа;
✓ файловую система MFS (Media File System), оптимизированную для доставки удовлетворяющего строгим временным ограничениям битового потока;
✓ менеджер медиапотока MSM (Media System Manager), позволяющий управлять проигрываемыми потоками;
✓ менеджер загрузки документов СМ (Configuration manager).
Оба менеджера – MSM и CM – поддерживают интерфейс с программой-клиентом на основе протокола удаленного вызова процедур RPC (Remote Procedure Call), а сервер обладает двумя важными свойствами. Во-первых, он гарантирует требуемую скорость передачи видеопотока (в рамках максимальной полосы пропускания). Поскольку Sun MediaCenter оптимизирован на доставку видео, он может поддерживать больший, чем стандартный сервер, видеопоток, при тех же аппаратных ресурсах. Во-вторых, менеджер MFS спроектирован специально для приложений с высоким уровнем ввода/вывода, и поэтому MediaCenter гарантирует среднюю производительность дискового ввода/вывода, в отличие от серверов с обычной файловой системой, которые гарантируют более низкий уровень производительности. Кроме того, MFS обеспечивает независимость передачи: если пользователи запрашивают даже одни те же битовые потоки, временные ограничения по их доставке не будут нарушены, при условии, конечно, что они укладываются в максимальную полосу пропускания. В обычной файловой системе, не оптимизированной для видео, множественные запросы к одному битовому потоку ведут к падению производительности сервера.
В сервере реализована модель "выталкивания", согласно которой он только инициирует и посылает поток битов по сетевому интерфейсу, выделенному для видеовывода. На этом интерфейсе нет канала для передачи информации в обратном направлении: от декодера к серверу. На сервер возлагается единственная задача – строго выдерживать временные ограничения потока. На принимающем конце должен быть достаточно быстрый декодер. Достоинства модели "выталкивания" очевидны – она более простая, а значит, принимающее устройство может быть более дешевым.
Sun MediaCenter начинает проигрывание уже через 5 секунд после начала загрузки. Сквозное проигрывание необходимо для приложений с быстрым и непрерывным обновлением содержания. Этот режим не налагает никаких ограничений на тип документов – они могут быть любыми, единственное ограничение в том, что видеопоток проигрывается только в нормальном режиме в прямом направлении. Сквозное проигрывание поддерживается менеджером документов CM и менеджером потока MSM, что позволяет использовать программы, которые практически одновременно записывают и проигрывают документы с сервера. Утилиты CM, распознавая режим сквозного проигрывания, предотвращают преждевременное уничтожение документов.
На уровне операционной системы видеодокументы представляются взаимосвязанной совокупностью файлов. Таким образом, для фильма в цифровой форме хранятся файлы одного или нескольких видеопотоков и файл для аудиопотока. В дополнение к файлам содержания существуют вспомогательные файлы, которые поддерживают распределение первичного файла по разным дискам (striping), синхронизацию между видео и аудио, обеспечивают разные режимы проигрывания. Менеджер документов делает все эти сложности невидимыми для глаза, позволяя работать с абстракцией видеофайла. Например, копирование и удаление видеофайлов производится так же, как и обычных текстовых, но, естественно, видеофайлы имеют дополнительные свойства – клиент MSM может заказать их доставку для проигрывания.
Из других типов медиа-серверов упомянем семейство Challenge фирмы SGI. Фирма эта известна своими разработками в области трехмерной графики (например, браузер и язык VRML – см. разд. 4.3.1). Ее системы Cosmo и WebForce оснащены медиа-серверами. Линейка серверов Challenge начинается с простой модели "S", а заканчивается суперсервером модели "XL". Их данные сведены в табл. 7.2.
Это семейство серверов имеет симметричную многопроцессорную архитектуру. Масштабируемость серверов достигается не только за счет увеличения числа процессоров и каналов ввода-вывода, но и путем перехода от младших моделей к старшим. Все модели полностью совместимы и работают под управлением операционной системы IRIX, причем ее версии, начиная с 6.X, поддерживают 64-разрядную архитектуру. Challenge S – настольный медиасервер, цена которого лишь немного превышает стоимость ПК. Для работы с внешней памятью используются 3 SCSI-интерфейса. Два слота ввода/вывода обеспечивают полосу пропускания до 267 Мбит/с.Таблица 7.2. Сравнительная характеристика серверов семейства Challenge фирмы SGI
Старшая модель Challenge XL способна обслужить до 1000 видеопотоков. Объем оперативной памяти в ней может достигнуть 16 Гбайт. Помимо обычной внешней памяти емкостью до 2 Тбайт предусмотрена внешняя память с особо высокой надежностью на основе RAID-технологий, емкость которой достигает 6,3 Тбайт. Естественно, что цена старшей модели достаточно высока.
Операционная система IRIX представляет собой адаптированный вариант UNIX и соответствует стандарту X/Open. В нее входит файловая система XPS (Expert System), которая поддерживает:
✓ 64-разрядную адресацию;
✓ специальную журнализацию;
✓ детерминированное время ответа.
Такая адресация, в отличие от 32-разрядной, практически не ограничивает размер адресуемой памяти. В этой файловой системе адресуется до 9 млн. Тбайт. Пока аппаратные ограничения не позволяют иметь память такого объема. Журнализация в файловой системе состоит в систематической регистрации транзакций, что обеспечивает быстрое восстановление файловой системы при повреждениях. А детерминированное время ответа означает, что файловая система гарантирует получение запрашиваемой полосы пропускания в течении определенного промежутка времени.
На рынке медиасерверов в последние годы растет конкуренция. Выпускаются серверы на основе оборудования фирмы Hewllett-Packard с программным обеспечением OKI MediaServer. Работы в данном направлении ведутся и компьютерным гигантом IBM совместно с фирмами BellSouth и Panasonic.7.5.3. Клиентское рабочее место
Браузер представляет собой интерфейс пользователя для доступа и просмотра любых электронных изданий. Отделение браузера от уровня клиентских сервисов подчеркивает тот факт, что он может быть реализован с помощью любого стандартного Web-браузера, что дает множество преимуществ, например, независимость от платформы. Наращивание функциональных возможностей может происходить путем добавления сервисов в рамках задаваемой браузером общей организации.
Браузер создает интерфейс с сервисом запросов и должен обеспечивать следующие функции:
✓ иерархический доступ каталог/файл, аналогичный менеджеру файлов;
✓ интерфейсы для поиска;
✓ просмотр списка ответов, включающего миниатюры;
✓ навигацию по связям между документами.
Если данный клиент обладает правами доступа к хранилищу изданий, он может, выбрав одну из миниатюр, сформировать запрос к хранилищу изданий на получение соответствующего документа. После определенного времени ожидания, связанного с выбором соответствующего информационного носителя в хранилище, сервер доставки начнет передачу клиенту запрошенной информации. Второй главный компонент браузера – средства просмотра для мультимедийных изданий. Для этого компонента существенно, чтобы медиадокументы были представлены в распространенных форматах либо легко преобразовывались в них. Браузер, однако, должен быть способен получать документы в их "родных" форматах и активизировать соответствующие приложения обработки, например, чтобы пользователь мог просматривать, а при необходимости и редактировать документы. В данном случае для воспроизведения медиа-потоков с сервера доставки используется интерфейс MSMC (Media System Manager Client) API (Application Program Interface). Это программный интерфейс пользователя для взаимодействия с сервером Sun MediaCenter. Поддержку этого API обеспечивает менеджер потока (MSM), являющийся агентом клиента на сервере. Скрывая все детали управления и передачи видеопотоков, API MSMC предоставляет пользователю несколько абстракций, в том числе – титулы (наименования медиадокументов) и список титулов для проигрывания. Операции над титулами полностью имитируют управление обычным видеопроигрывателем: воспроизведение, быструю перемотку, обратное проигрывание. Сказанное иллюстрируется рис. 7.11.
Основные свойства API MSMC:
✓ концепция проигрывателя, списка проигрывания, титулов;
✓ различные режимы проигрывания;
✓ проигрывание титулов по расписанию;
✓ контроль доступа к проигрывателю;
✓ параллельный доступ к одному списку проигрывания нескольких клиентов.
При интерпретации удаленных обращений клиентов менеджер потока на сервере MSM опирается на оглавление титулов, через которые осуществляется доступ к системе медиафайлов (MFS). В соответствии с моделью выталкивания MSM лишь инициирует проигрывание, но не производит декодирование потока. Менеджер потока MSM и его протокол API принимает запросы и направляет потоки битов по нужным адресам, где локально выполняется декодирование и визуализация. В будущих реализациях предполагается расширить API MSMC функциями управления титулами.
Простая клиентская программа MSMC выглядит следующим образом. Логическая связь клиента с сервером называется сессией. Чтобы открыть сессию, требуется задать IP-сервера и обратиться к нему. В результате клиентская программа получает логический дескриптор сервера, служащий ключом для всех следующих операций. Далее обычно с сервера извлекается список титулов, доступных для проигрывания, и для тех из них, которые представляют интерес, запрашивается необходимая скорость воспроизведения и возможные режимы проигрывания. Следующий шаг – создание плеера. Плеер – это размещающийся на сервере агрегат данных, состоящий из списка проигрывания, логической головки и списка контроля доступа. Обычно на сервере имеется несколько плееров, каждый из них идентифицируется своим дескриптором. При создании плеера клиентская программа строит список проигрывания, в котором указаны названия и относительное время начала проигрывания. После того как плеер создан, клиент соединяет его со своим IP-адресом и запускает проигрывание титула из списка.
API MSMC позволяет разделять плееры между приложениями, т. е. различными процессами на клиентской машине, а также приложениями на разных машинах. Разделение основывается на уникальности дескриптора плеера. Обладание дескриптором дает приложению полный контроль над всеми его функциями. Дескрипторы могут свободно передаваться между приложениями по любому механизму, сохраняющему битовое представление: через файл, общую память или сокеты (Sockets). Последний представляет собой абстрактный интерфейс сетевого взаимодействия для потоковой системы передачи информации низкого уровня.
Менеджер потока MSM контролирует отдельно доступ к серверу и доступ к плеерам с тремя уровнями прав: на чтение, управление и администрирование. Владелец прав чтения с сервера может получить списки плееров, титулов и текущие состояния плееров. Права администрирования сервера дают возможность создавать/удалять плееры. Доступ по чтению к плееру позволяет получить его список проигрывания. Обладая правами управления плеером, можно изменять скорость и длительность проигрывания титулов. Наконец, администрирование плеера – это установка прав доступа для других пользователей. Пользователь, создавший плеер, имеет на него все права доступа и может определить их для остальных пользователей.7.6. Публикация содержимого баз данных на Web-страницах
Наряду с хранением подготовленных и опубликованных изданий в электронной форме в базах данных, откуда их всегда можно извлечь и напечатать дополнительный тираж, нередко требуется решить обратную задачу – опубликовать содержимое тех или иных баз данных, например, в виде Web-страницы (ее части или нескольких страниц). Ниже рассматривается возможность таких публикаций в двух вариантах: в виде статических и в виде динамических Web-страниц. В первом случае содержимое опубликованной страницы остается неизменным и отражает состояние базы данных в момент получения ею запроса на извлечение определенной информации. Во втором случае поддерживается непрерывная связь между базой данных и опубликованными ее страницами. В результате при изменении содержимого БД содержимое Web-страниц также изменяется.
7.6.1. Публикация статических Web-страниц
Источником для создания статической Web-страницы может служить любой набор записей в базе данных. Обычно на таких страницах публикуется таблица базы данных (или ее некоторая часть) или данные, полученные в результате выполнения некоторого запроса к базе. Вариантом публикации может быть отчет, созданный на основе данных, содержащихся в базе. Такая публикация в дальнейшем просматривается в браузере. Если отчет состоит из нескольких страниц, то формируется несколько HTML-файлов, связанных друг с другом гипертекстовыми ссылками. Однако при этом не сохраняется связь этого файла с источником данных, т. е. Web-страница остается неизменной при изменении содержимого базы данных.
Все такие публикации создаются в результате экспорта соответствующих объектов базы данных. Если для такой операции используется база, созданная в рамках СУБД Access (она входит в состав пакета MS Office), то рекомендуется придерживаться следующего порядка действий:
1. Открыть и проверить содержимое материалов базы данных, которые предполагается публиковать.
2. Выбрать объект для публикации, т. е. выбрать соответствующую вкладку диалогового окна, показанного на рис. 7.12 (в примере нажата кнопка Отчеты и выбран отчет Итоги продаж по объему ). 3. С помощью команды Экспорт (рис. 7.13) меню Файл открыть диалоговое окно Экспорт объекта , показанное на рис. 7.14.