logo search
3-260

Метаданные

Когда вы выбираете в браузере ссылку, то перед вами появляется нечто, что формально называется ресурсом (resource). Это нечто часто называют документом, потому что множество ресурсов, с которыми пользователи встречаются в Интернете, — это документы, предназначенные для чтения человеком.

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

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

Метаданные (metadata) — это информация о документе, понимаемая компьютером (machine understandable).

«Понимание компьютером» есть ключевой момент в определении метаданных. Человек смотрит на документ и видит его заголовок, в котором указано название документа. Подзаголовок может содержать тему документа, а также его краткую аннотацию. Обычно где-то в самом начале документа или в самом его конце указан автор (или авторы)... Таким образом, бегло взглянув на документ (и потратив обычно несколько секунд), человек получает дополнительную информацию о документе и после этого делает вывод: тот это документ, который ему нужен, или нет; читать ли сам текст, содержимое (content) документа или нет. Если бы машина могла так же легко понять, какая тема документа, кто его автор и когда он создал этот документ и т.д., тогда реально можно охарактеризовать и автоматически искать документ по большому числу признаков. Если машина не понимает документ, то она принципиально может искать только по словам, содержащимся в документах.

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

На сегодняшний день наиболее перспективной и общеупотребительной моделью описания метаданных является система RDF (Resource Description Framework), созданная международной организацией W3C (World Wide Web Consorcium) при участии представителей различных заинтересованных организаций.

Размещение метаданных

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

В случае размещения метаданных отдельно от ресурса сами метаданные предпочтительно хранить (и передавать) в формате XML. При этом максимально используются возможности модели RDF и обеспечивается свободный обмен информацией (interoperability).

Обмен метаданными сводится к пересылке RDF/XML-файлов (т.е. текстовых файлов формата XML или просто ссылок на эти файлы), т.е. может быть полностью автоматизирован. Например, можно заранее подготовить описания на группу ресурсов, а потом послать их в информационную систему одним письмом (в виде attachments).

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

    1. Ping и Finger

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

Ping — это процедура, которая базируется на ICMP- и UDP-протоколах пересылки дейтограмм и служит для трассировки маршрутов и проверки работоспособности каналов и узлов (в некоторых программных пакетах эта команда имеет имена trace, hopcheck, tracert или traceroute). Для решения поставленной задачи PING использует отклики протокола ICMP. Применяется PING и при отладке сетевых продуктов. Трассировка может выполняться, например, посредством команды ping -q (пакет PCTCP). При выполнении этой команды ЭВМ сообщит вам Internet-адреса всех промежуточных узлов, их имена и время распространения отклика от указанного вами узла. Следует иметь в виду, что трассировка осуществляется непосредственно с помощью IP-протокола (опция записи адресов промежуточных узлов). Ниже приведен пример использования команды Ping. Если вы просто напечатаете команду ping (пакет PCTCP), то ЭВМ выдаст на экран справочную таблицу по использованию этой команды:

Usage: ping [-options] host options:

Ping позволяет не только проверить работоспособность канала, но измерить ряд его характеристик, включая надежность Сходную информацию позволяет получить и программа traceroute (использует непосредственно IP-пакеты):

Finger является простым протоколом (RFC-1288), который служит для получения информации о пользователях узлов Internet. Протокол использует TCP-порт 79. Команда Finger может дать вам данные о списке пользователей, которые работают в данный момент на интересующей вас ЭВМ, о конкретном пользователе (дата последнего сеанса входа в систему и т.д.), о списке загруженных задач, о типах интерфейсов (например, терминалов). Данный протокол обеспечивает интерфейс для удаленной информационной программы пользователя (RUIP — Remote User Information Program).

Протокол Finger базируется на TCP. Локальная ЭВМ осуществляет TCP-соединение с удаленным узлом через указанный порт. После этого становится доступной программа RUIP и пользователь может посылать ей свои запросы. Каждый запрос представляет собой строку текста. RUIP, получив запрос, анализирует его и присылает ответ, после чего соединение закрывается.

    1. TELNET

TELNET позволяет пользователю установить TCP-соеди-нение с сервером и затем передавать коды нажатия клавиш так, как если бы работа проводилась на консоли сервера. TELNET (RFC-854, в некоторых реализациях tn) служит для выполнения удаленного доступа к вычислительным ресурсам и базам данных. Для входа в базу данных или ЭВМ обычно нужна аутентификация (ввод имени-идентификатора пользователя и его слова-пропуска). В некоторых реализациях допускается использование параметров, которые подключают необходимые эмуляторы терминалов.

TELNET предлагает три услуги:

  1. Определяет сетевой виртуальный терминал (NVT — network virtual terminal), который обеспечивает стандартный интерфейс к удаленной системе.

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

  3. Обеспечивает симметрию соединения, допуская любой программе (например FTP) выступать в качестве клиента.

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

Telnet взаимодействует с другой ЭВМ через протокол TELNET. Если команда TELNET вводится без аргументов, ЭВМ переходит в командный режим, напечатав приглашение telnet>. При вводе TELNET с аргументами программа осуществит связь вашей ЭВМ с удаленным компьютером, имя или адрес которого вы ввели в качестве одного из аргументов.

После того как TELNET связь установлена, начинаются переговоры об используемых опциях.

Далее TELNET переходит в режим ввода. В этом режиме любой введенный текст пересылается удаленной ЭВМ. Ввод может производиться посимвольно или построчно. Список кодов терминалов содержится в RFC-1700.

    1. FTP

FTP (RFC-959) обеспечивает файловый обмен между удаленными пользователями. Протокол FTP формировался многие годы. Первые реализации в МТИ относятся к 1971. Окончательный вид он обрел в 1985 году. Таким образом, данный протокол является одним из старейших.

Для реализации обмена между двумя персональными ЭВМ в пределах сети (программные пакеты PCTCP, и т.д.) можно резидентно загрузить FTPSRV или другую эквивалентную программу. Также как, и в случае TELNET, необходима идентификация, но многие депозитарии допускают анонимный вход (имя пользователя ANONYMOUS, RFC-1635), который не требует слова пропуска (пароля) или допускает ввод вашего почтового адреса вместо него.

Работа FTP на пользовательском уровне содержит несколько этапов:

  1. Идентификация (ввод имени-идентификатора и пароля).

  2. Выбор каталога.

  3. Определение режима обмена (поблочный, поточный, ascii или двоичный).

  4. Выполнение команд обмена (get, mget, dir, mdel, mput или put).

  5. Завершение процедуры (quit или close).

FTP — довольно необычная процедура, так как поддерживает две логические связи между ЭВМ. Одна связь служит для удаленного доступа и использует протокол Telnet. Другая связь предназначена для обмена данными. Канал остается активным до завершения процедуры FTP. TOS (тип IP-сервиса) соответствует минимуму задержки. Канал для передачи данных (TCP) формируется каждый раз для пересылки файлов. Канал открывается перед началом пересылки и закрывается по коду end_of_file (конец файла). IP-тип сервиса (TOS) в этом случае ориентирован на максимальную пропускную способность.

Конечный пользователь взаимодействует с протокольным интерпретатором, в задачи которого входит управление обменом информацией между пользователем и файловой системой, как местной, так и удаленной. Схема взаимодействия различных частей Internet при работе FTP изображена на рис. 74.

Рис. 74 — Схема работы протокола ftp

Возможна и другая схема взаимодействия, когда по инициативе клиента осуществляется файловый обмен между двумя ЭВМ, ни одна из которых не является машиной клиента (рис. 75).

Рис. 75 — Организация информационного обмена между

двумя удаленными машинами

Уход из FTP производится по команде quit.

Ссылка на объект, доступный через анонимное FTP, обычно записывается в виде:

Название ресурса

Имя сервера

Имя каталога в сервере.

Например:

Internet-cmc

ftp.rpi.edu

/pub/communications/internet-cmc.txt

Internet-cmc (CMC — computer-mediated communication) —это межкомпьютерный обмен по сети Internet.

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

Следует иметь в виду, что некоторые анонимные FTP-серверы (так же как, например, GOPHER-серверы) требуют, чтобы ЭВМ, с которой осуществляется ввод, имела не только IP-адрес, но и зарегистрированное в локальном DNS-сервере имя. Эти FTP-серверы, получив запрос, пытаются выяснить имя ЭВМ, так как они ведут «журнал посещений», и в случае неуспеха прерывают сессию. Таким образом, анонимное FTP может считаться таковым лишь условно, в смысле ненужности быть авторизованным на сервере, чтобы иметь к нему доступ.

    1. X-windows

Система X-windows была разработана в Массачусетском Технологическом институте (сотрудники этого института внесли существенный вклад и в разработку всего комплекса TCP/IP-протоколов) в качестве многооконного программного интерфейса для ЭВМ с побитовым отображением графической информации. Система предполагала отображение результатов работы нескольких программ одновременно. Сегодня это одна из наиболее популярных UNIX-систем. Для каждой программы выделялась отдельная область на экране — «окно». С самого начала система предназначалась для работы в различных сетях (TCP, IPX/SPX и т.д.). Система может управлять окнами как на локальной, так и на удаленной ЭВМ. Для управления окнами используются специальные сообщения. Для обмена этими сообщениями разработан x-windows протокол. Система X-windows состоит из двух частей Xlib и X-сервера (RFC-1198) (рис. 76).

Рис. 76 — Схема взаимодействия различных частей X-windows

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

Прикладная программа-клиент и сервер взаимодействуют друг с другом через системный протокол X-windows (RFC-1013 и RFC-1198). При этом используется четыре вида сообщений:

  1. Запрос: инструкция, направляемая серверу рабочей станции.

  2. Отклик: направляется от сервера в ответ на запрос.

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

  4. Ошибка: посылается сервером прикладной программе, если что не так (переполнение памяти, неправильно заданные параметры делают выполнение задания невозможным и пр.).

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

Рис. 77 — Форматы сообщений об ошибках

Некоторые X-запросы не нуждаются в откликах (например, связанные с перемещением манипулятора мышь), такие сообщения могут группироваться и посылаться единым потоком (batch stream). Такой подход позволяет пользователю выдать Xlib-запрос и перейти к выполнению других операций, в то время как схема запрос-отклик требует ожидания.

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

X-Windows приложения должны установить канал связи между собой, прежде чем они смогут обмениваться сообщениями. После того как связь установлена, прикладная программа и рабочая станция готовы к работе. Если была нажата клавиша мышки (событие — ButtonPress), а неизвестно, в каком из окон находится ее указатель, прикладная программа выдает в Xlib запрос XQueryPointer. Положение указателя будет прислано в отклике на этот запрос.

Данный протокол, строго говоря, не входит в набор TCP/IP, хотя, как было сказано, он описан в RFC. Но мне представлялось важным дать в руки операторов сетей информацию, которая позволит им лучше понимать, что «гуляет» по их кабельным сегментам.

    1. WWW

World Wide Web (всемирная сеть, WWW или 3W) представляет собой информационную систему, базирующуюся на использовании гипертекста. Разработка этой системы была начата Тимом Бернерс-Ли, которому в 1989 году пришла в голову мысль объединить гипертекст с Интернет. Доступ к WWW возможен только в рамках протоколов TCP/IP, но для его использования необязательно иметь сервер-клиент (browser) на вашей машине. С некоторыми ограничениями возможен доступ и через электронную почту (listserv@info.cern.ch). Если WWW-клиент-сервер не установлен, можно работать в режиме удаленного терминала. Программными интерфейсами для WWW являются MS explorer, netscape, opera и многие другие. Для подготовки документов в рамках HTML (Hypertext Markup Language) пригоден любой текстовый редактор (например, emacs в UNIX-машинах, ME в MS-DOS или Winword в WINDOWS). При подготовке гипертекстов можно использовать язык HTML или взять одно из множества доступных программных средств, которые позволяют преобразовать ваш документ в необходимый формат. Документы в гипертексте связываются друг с другом определенным набором слов. Пользователю не нужно знать, где находится тот или иной документ. Часто ссылки на серверы WWW начинаются с сокращения http:// (Hypertext Transfer Protocol). Гипертекст позволяет осуществлять ссылки-разъяснения на статьи, хранящиеся на удаленном сервере. Гипертекст подразумевает не только текстовые объекты (но и графические или звуковые), поэтому термин гиперсреда (hypermedia) более правилен. WWW может проводить поиск ключевых слов и в специфических документах-индексах, в этом случае выдаются указатели на искомые документы. WWW может использовать различные форматы документов и работать с разнообразными структурами информации, обеспечивая доступ к информационной вселенной.