Ж у р н а л   о   к о м п ь ю т е р н ы х   с е т я х   и   т е л е к о м м у н и к а ц и о н н ы х   т е х н о л о г и я х
СЕТИ И СИСТЕМЫ СВЯЗИ on-line
  ПОИСК: ПОДПИСКА НА НОВОСТИ: НОМЕР:
    ДОМОЙ • Архив: Новостей | Конференций | НомеровПодписка
 
   
 
   
    
РЕДАКЦИЯ
 
Все о журнале
Подписка
Как проехать
Где купить
Отдел рекламы
График выхода журнала
Адреса в Интернет

РУБРИКАТОР
   
• Инфраструктура
• Информационные
   системы

• Сети связи
• Защита данных
• Кабельные системы
• Бизнес
• Колонка редактора
• Электронная
   коммерция

• Только на сервере
• Системы
   учрежденческой
   связи

• Новые продукты


Rambler's Top100

  

Реализация push-технологии: JavaScript против CDF

Пол Баутин

Последние версии Web-браузеров производства фирм Netscape и Microsoft обеспечивают владельцев push-каналов самой широкой аудиторией. На сегодняшний день свыше 90% трафика Всемирной паутины доставляется конечным пользователям посредством браузеров Netscape Navigator и Internet Explorer. Разработчики Web-узлов получили в свое распоряжение новую технологию — Webcasting, поддерживаемую этими браузерами и реализующую пассивную модель приема сообщений, т. е. доставку потребителям информационной продукции посредством push-каналов. Однако, чтобы осуществить это, необходимо знать некоторые «хитрости» и уметь писать программы.

Средства для организации на Web-узле push-канала отличаются друг от друга незначительно, в зависимости от того, на какой браузер ориентируется разработчик — Netscape Communicator или Internet Explorer. К счастью для создателей информационного наполнения и разработчиков Web-узла, в обеих платформах не возникает каких-либо серьезных проблем с переносимостью и совместимостью средств доставки информации. В то время как push-технология дает толчок к переосмыслению форм и содержания работы во Всемирной паутине, возможности push-систем, предложенных фирмами Netscape и Microsoft, позволяют использовать традиционные Web-страницы без каких-либо серьезных доработок: добавление нескольких строк программного кода немедленно преобразует Web-узел в push-канал.

NetCaster фирмы Netscape

Поддержка push-технологии реализована в модуле NetCaster программного продукта Communicator фирмы Netscape. Его рабочая версия для ОС Windows 95 и Windows NT, появившаяся на рынке в конце мая с. г., уже тогда обеспечивала возможности выбора тематических разделов и графика их автоматического обновления. Однако в NetClaster до сих пор отсутствует возможность конфигурирования со стороны сервера при добавлении пользователем нового канала в список этого модуля, что делает продукт фирмы Netscape более похожим на утилиту для обновления «закладок» (bookmarks), чем на настоящий push-клиент.

С помощью модуля NetCaster можно в качестве указателя push-канала использовать адрес любого Web-узла (при условии, что он доработан так, как указано ниже. — Прим. ред.). Чтобы добавить новый канал, пользователь нажимает кнопку «Add» в меню NetCaster и вызывает диалоговое окно для задания параметров этого канала. В окне можно указать адрес узла (в формате URL), глубину отслеживаемых связей и частоту обновления.

С момента задания параметров канала модуль NetCaster будет контролировать появление на сервере новых документов, сравнивая даты их поступления с датой последней загрузки. Новые документы загружаются в специальный кэш модуля NetCaster, размещаемый на жестком диске пользователя. В отличие от обычного кэша, который имеется в Netscape Navigator, он постоянен и его размеры не ограничены размером дискового кэша браузера. Такое ограничение для каждого заданного канала устанавливается в меню NetCaster. И, хотя пользователь сам может полностью контролировать установку и изменение параметров каждого канала, интеллектуальное ПО позволяет автоматически подписаться на интересующую его информацию. Модуль NetCaster поддерживает соответствующую структуру данных. Она может быть помещена на Web-узел в виде сценария на языке JavaScript. Нажимая на кнопку «Add Channel» («Добавить канал»), пользователь загружает в NetCaster набор параметров конфигурации канала, значения которых задаются по умолчанию, что и приводит к подписке пользователя на этот канал.

Пример HTML-страницы

<html>
<head>
<title>Subscribe to the Freelance Channel Now!>/<title>
<SCRIPT LANGUAGE="JavaScript1.2">

var netcaster = components["netcaster"];
netcaster.activate();
var channel = netcaster.GetChannelObject();

channel.url = "http://www.boutin.com/freelance/channel.html";
channel.name = "The Freelance Channel"; // Name of channel in NetCaster dialogs
channel.desc = "Freelance Writer's Assignments"; // short description for Channel Finder menu
 // not yet supported
channel.intervalTime = -5; // Channel update frequency in minutes
// The following special negative values are also allowed:
 // -2 15 minutes
 // -3 30 minutes
 // -4 Hourly
 // -5 Daily (specify an absoluteTime below)
 // -6 Weekly (specify an absoluteTime below).
channel.absoluteTime = 30; // Time to begin update,
// specified in minutes after midnight if intervalTime = -5
// specified in minutes after midnight Sunday morning if intervalTime = -6

channel.estCacheSize = 1024000;
// Estimated cache size in bytes, for checking disk space
 // "-1" specifies unknown size requirements
channel.maxCacheSize = 2048000
// Maximum cache size in bytes, not to be exceeded
channel.depth = 3; // Number of levels of links to follow caching
channel.active = 1; // Whether or not channel is actively updated

channel.topHint = 0; // geometry hints for channel
channel.leftHint = 0;
channel.widthHint = screen.availWidth
* 2 / 3;
channel.heightHint = screen.availHeight
* 2 / 3;

channel.mode="window"; // 'window' = regular browser window
// 'fullscreen' = chromeless screen filling entire window
// 'webtop' = fullscreen windows locked to bottom of stack,
// but over Windows desktop icons and wallpaper

channel.type="1"; // 1 = Web (HTML/HTTP) channel
// 2 = Castanet channel
channel.cardURL = "about:blank"; // icon shown in Channel Finder menu
 // not yet supported
function addChannel() {
 netcaster.AddChannelObject(chan);
}

</script>
</head>
<body>
New freelance writing assignments
broadcast to your desktop. Be the first to know about them!
<FORM>
<INPUT TYPE="button"
 NAME="Subscribe"
 VALUE="Subscribe Now"
onClick="addChannel()">
</FORM>
</body>
</html>
 

На примере HTML-страницы, приведенном выше, продемонстрирован соответствующий программный код.

Указанный способ преобразования Web-узла в push-канал весьма прост и быстр, однако не лишен ряда недостатков. Наиболее серьезным из них является «неумение» ПО push-трансляции изменять заданные пользователем частоту обновления информации, уровни кэширования, размеры кэша и т. д.

Фирма Netscape включила в последнюю версию продукта Communicator и поддержку программного продукта Castanet фирмы Marimba, написанного на языке Java. Подробное описание по реализации поддержки ПО Castanet можно найти по адресу developer.netscape. com/library/documentation/netcast/devguide/nettopdi.htm.

Активные каналы фирмы Microsoft

Push-трансляцию Web-страниц обеспечивает и фирма Microsoft. Но если решение Netscape основано на добавлении сценария JavaScript к существующей Web-странице, то метод Microsoft заключается в создании нового файла в фирменном стандарте Channel Definition Format (CDF), описывающего страницы Web-узла, на которые можно подписаться как на каналы. Формат CDF был предложен на рассмотрение W3-консорциуму в качестве возможного стандарта, обеспечивающего владельцам push-каналов боўльшую степень контроля за ними, так как разделение описания канала и его содержимого позволяет изменять параметры канала, не затрагивая отдельных Web-страниц.

На сервере каналов файлы CDF хранятся отдельно от содержимого Web-страниц соответствующего узла. Они написаны в XML-формате — еще одном фирменном стандарте, который сейчас рассматривается W3-консорциумом. Он представляет собой расширенный язык разметки, похожий на HTML, но с более «жестко» определенным синтаксисом, исключающим присущие языку HTML двусмысленности. Пример простого CDF-файла приведен ниже.

Пример CDF-файла

<XML>
<CHANNEL HREF="http://www.boutin.com/freelance/
channel.htm" Base="http://www.boutin.com/freelance">
<Tracking>
<Post HREF="email:tracking@boutin.com"/>
<PurgeTime DAY=1/>
<Type>OFFLINE</Type>
</Tracking>
<Title VALUE="The Freelance Channel"/>
<Abstract VALUE="The Freelance Channel — breaking writers' assignments broadcast to your desktop!"/>
<Logo HREF="http://www.boutin.com/images/ freelance.gif" Type="IMAGE"/>
<CHANNEL HREF="http://www.boutin.com/ freelance/jobs/">
<Title VALUE="New Jobs"/>
<UserSchedule>
HOURLY
</UserSchedule>
</CHANNEL>
<CHANNEL HREF="http://www.boutin.com/freelance/news/">
<Title VALUE="Industry News"/>
 <Schedule>
<EndDate VALUE+ "1995.06.05T06:00-0800" />
<IntervalTime DAY=1 />
<EarliestTime HOUR=12 />
<LatestTime HOUR=18 />
</Schedule>
</CHANNEL>
<CHANNEL>
</XML>
 
 

Синтаксис CDF может напугать новичков, однако его использование полностью исключает ошибки. Понимая, что принятие формата CDF вызовет определенное сопротивление пользователя, фирма Microsoft разработала «CDF-мастер» для Web-страниц. Этот инструмент представляет собой форму, в которую можно помещать название канала и его параметры, а нажав кнопку «Create», создавать синтаксически правильный CDF-файл для данной Web-страницы.

В настоящее время Microsoft еще не определилась с окончательным видом пользовательского интерфейса для выбора и настройки каналов. В предварительных разработках опция Channels («Каналы») существовала в качестве отдельного элемента в меню Favorites продукта Explorer, которое не очень отличается от уже работающего меню Smart Favorites. Вероятно, Microsoft должна создать пользовательский интерфейс, похожий на интерфейс фирмы Netscape, чтобы самые популярные каналы стали достоянием широкой публики. Разработчикам следует изучить подходы обеих фирм к push-технологии, поскольку их Web-браузеры имеют миллионы приверженцев.





  
1 '1998
СОДЕРЖАНИЕ

колонка редактора

• Главные мысли о старом

локальные сети

• Коммутаторы и сетевые адаптеры Gigabit Ethernet

• Медные провода "протянут" до XXI века

• "5–4–3" — формула успеха

• Краткий англо-русский толковый словарь терминов СКС

• Нахождение отказов в высокопроизводительных ЛВС

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

• Предприятие как единый объект автоматизации. Размышления на тему

• Теряет ли АТМ свою привлекательность?

• Полезные привычки, или Как избежать ночных кошмаров

• Исследование схем тиражирования в распределенных БД

системы учрежденческой связи

• CTI: подружились компьютер с телефоном

• Учрежденческий радиопейджинг: связь внутри предприятий

услуги сетей связи

• Устройства доступа к Frame Relay

• Передача голоса по сетям АТМ (часть I)

• Телевидение: от эфирного к кабельному и далее...

интернет и интрасети

• Реализация push-технологии: JavaScript против CDF

• Факсимильная связь через Интернет

• Что могут ISP?

защита данных

• Иерархические системы хранения данных

• Исповедь взломщика-консультанта

новые продукты

• Коммутатор NH2024 фирмы NBase, Диагностический прибор для линий xDSL, Стековая система удаленного доступа фирмы 3Com, Шлюз BayStack Instant Internet II, Маршрутизирующие коммутаторы: гонка со скоростью, Coral SL — малая система с большими возможностями

бизнес

• Продолжая лучшие традиции (интервью президента АО "Информсвязь" М. Б. Купермана)

• Внимание: РИФ!

только на сервере

• Организация множественного доступа в Интернет

• xDLS-модем ASMi-50 фирмы RAD data communications



 Copyright © 1997-2007 ООО "Сети и Системы Связи". Тел. (495) 234-53-21. Факс (495) 974-7110. вверх